annotate Recount.R @ 8:e4e6e583b8d9 draft default tip

planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit ad301f84e16455ca3886e9b56e908180dfd66d4f
author sblanck
date Thu, 26 Jul 2018 08:17:53 -0400
parents 3ce32282f6a4
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
1 #!/usr/bin/env Rscript
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
2 # setup R error handling to go to stderr
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
3 options( show.error.messages=F, error = function () { cat( geterrmessage(), file=stderr() ); q( "no", 1, F ) } )
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
4
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
5 # we need that to not crash galaxy with an UTF8 error on German LC settings.
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
6 loc <- Sys.setlocale("LC_MESSAGES", "en_US.UTF-8")
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
7
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
8 library("optparse")
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
9
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
10 ##### Read options
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
11 option_list=list(
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
12 make_option("--id",type="character",default=NULL,help="GSE ID from GEO databse (required)"),
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
13 make_option("--report",type="character",default=NULL,help="Text file summarizing conditions of the experiment")
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
14
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
15 );
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
16
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
17 opt_parser = OptionParser(option_list=option_list);
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
18 opt = parse_args(opt_parser);
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
19
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
20 if(is.null(opt$id)){
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
21 print_help(opt_parser)
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
22 stop("Recount id required.", call.=FALSE)
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
23 }
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
24
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
25 #loading libraries
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
26 suppressPackageStartupMessages(require(recount))
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
27
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
28 studyID=opt$id
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
29 reportFile=opt$report
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
30
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
31 dir.create("./split", showWarnings = TRUE, recursive = FALSE)
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
32
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
33 url <- download_study(studyID)
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
34 load(file.path(studyID, 'rse_gene.Rdata'))
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
35 rse <- scale_counts(rse_gene)
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
36 counts=assay(rse)
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
37 conditions=rse$title
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
38
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
39 for (i in 1:ncol(counts))
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
40 {
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
41 currentCount=as.data.frame(counts[,i])
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
42 sampleID=colnames(counts)[i]
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
43 #colnames(currentCount)=sampleID
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
44 write.table(x=currentCount,file=paste0("./split/",sampleID,"_",conditions[i],'.tabular'),sep="\t",row.names = T, col.names = F)
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
45 }
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
46
3ce32282f6a4 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit 228bd64b01f184d5d8ebc9f65fe0add2d45ed4fe
sblanck
parents:
diff changeset
47 write.table(as.data.frame(cbind(sampleID=colnames(counts),title=conditions)),quote = FALSE,col.names =TRUE, row.names=FALSE,file=reportFile,sep="\t")