annotate MetaRNASeq.R @ 24:cb29ad7d75a5 draft

planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit a0cb2703e4dbbc1fadeedc5b61acb6e1324433f7
author sblanck
date Sat, 24 Feb 2018 10:07:51 -0500
parents ef7d98f9eb51
children 49ce6fbe11de
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
14
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
1 #!/usr/bin/env Rscript
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
2 # setup R error handling to go to stderr
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
3 options( show.error.messages=F, error = function () { cat( geterrmessage(), file=stderr() ); q( "no", 1, F ) } )
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
4
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
5 # we need that to not crash galaxy with an UTF8 error on German LC settings.
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
6 loc <- Sys.setlocale("LC_MESSAGES", "en_US.UTF-8")
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
7
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
8 library("optparse")
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
9
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
10 ##### Read options
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
11 option_list=list(
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
12 make_option("--input",type="character",default="NULL",help="list of rdata objects containing eset objects"),
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
13 make_option("--result",type="character",default=NULL,help="text file containing result of the meta-analysis"),
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
14 make_option("--htmloutput",type="character",default=NULL,help="Output html report"),
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
15 make_option("--htmloutputpath",type="character",default="NULL",help="Path of output html report"),
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
16 make_option("--htmltemplate",type="character",default=NULL,help="html template)")
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
17 );
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
18
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
19 opt_parser = OptionParser(option_list=option_list);
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
20 opt = parse_args(opt_parser);
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
21
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
22 if(is.null(opt$input)){
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
23 print_help(opt_parser)
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
24 stop("input required.", call.=FALSE)
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
25 }
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
26
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
27 #loading libraries
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
28
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
29 suppressPackageStartupMessages(require(affy))
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
30 suppressPackageStartupMessages(require(annaffy))
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
31 suppressPackageStartupMessages(require(VennDiagram))
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
32 suppressPackageStartupMessages(require(GEOquery))
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
33
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
34 listInput <- trimws( unlist( strsplit(trimws(opt$input), ",") ) )
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
35
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
36 listfiles=vector()
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
37 listfilenames=vector()
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
38
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
39 for (i in 1:length(listInput))
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
40 {
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
41 inputFileInfo <- unlist( strsplit( listInput[i], ';' ) )
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
42 listfiles=c(listfiles,inputFileInfo[1])
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
43 listfilenames=c(listfilenames,inputFileInfo[2])
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
44 }
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
45
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
46 outputfile <- opt$result
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
47 result.html = opt$htmloutput
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
48 html.files.path=opt$htmloutputpath
e5a94bc69bd6 planemo upload for repository https://github.com/sblanck/smagexp/tree/master/smagexp_tools commit da1436252b5db4e90c39c95140558f0f93544160
sblanck
parents: 2
diff changeset
49 result.template=opt$htmltemplate
2
93451f832736 Uploaded
sblanck
parents:
diff changeset
50
93451f832736 Uploaded
sblanck
parents:
diff changeset
51 alpha=0.05
93451f832736 Uploaded
sblanck
parents:
diff changeset
52
93451f832736 Uploaded
sblanck
parents:
diff changeset
53 #print(comparison)
93451f832736 Uploaded
sblanck
parents:
diff changeset
54
93451f832736 Uploaded
sblanck
parents:
diff changeset
55 listData=lapply(listfiles,read.table)
93451f832736 Uploaded
sblanck
parents:
diff changeset
56 orderData=lapply(listData, function(x) x[order(x[1]), ])
93451f832736 Uploaded
sblanck
parents:
diff changeset
57 rawpval=lapply(orderData,function(x) x[6])
93451f832736 Uploaded
sblanck
parents:
diff changeset
58 rawpval=lapply(rawpval, function(x) as.numeric(unlist(x)))
93451f832736 Uploaded
sblanck
parents:
diff changeset
59
93451f832736 Uploaded
sblanck
parents:
diff changeset
60 DE=list()
93451f832736 Uploaded
sblanck
parents:
diff changeset
61 DE=lapply(orderData, function(x) ifelse(x[7]<=0.05,1,0))
93451f832736 Uploaded
sblanck
parents:
diff changeset
62
93451f832736 Uploaded
sblanck
parents:
diff changeset
63 FC=list()
93451f832736 Uploaded
sblanck
parents:
diff changeset
64 FC=lapply(orderData, function(x) x[3])
93451f832736 Uploaded
sblanck
parents:
diff changeset
65
93451f832736 Uploaded
sblanck
parents:
diff changeset
66 DE=as.data.frame(DE)
93451f832736 Uploaded
sblanck
parents:
diff changeset
67 colnames(DE)=listfilenames
93451f832736 Uploaded
sblanck
parents:
diff changeset
68 FC=as.data.frame(FC)
93451f832736 Uploaded
sblanck
parents:
diff changeset
69 colnames(FC)=listfilenames
93451f832736 Uploaded
sblanck
parents:
diff changeset
70 # the comparison must only have two values and the conds must
93451f832736 Uploaded
sblanck
parents:
diff changeset
71 # be a vector from those values, at least one of each.
93451f832736 Uploaded
sblanck
parents:
diff changeset
72
93451f832736 Uploaded
sblanck
parents:
diff changeset
73 #if (length(comparison) != 2) {
93451f832736 Uploaded
sblanck
parents:
diff changeset
74 # stop("Comparison type must be a tuple: ", cargs[length(cargs) - 8])
93451f832736 Uploaded
sblanck
parents:
diff changeset
75 #}
93451f832736 Uploaded
sblanck
parents:
diff changeset
76
93451f832736 Uploaded
sblanck
parents:
diff changeset
77 sink("/dev/null")
93451f832736 Uploaded
sblanck
parents:
diff changeset
78 dir.create(html.files.path, recursive=TRUE)
93451f832736 Uploaded
sblanck
parents:
diff changeset
79 #library(DESeq)
93451f832736 Uploaded
sblanck
parents:
diff changeset
80 #library(HTSFilter)
93451f832736 Uploaded
sblanck
parents:
diff changeset
81
93451f832736 Uploaded
sblanck
parents:
diff changeset
82 #DE=list()
93451f832736 Uploaded
sblanck
parents:
diff changeset
83 #FC=list()
93451f832736 Uploaded
sblanck
parents:
diff changeset
84 #i=1
93451f832736 Uploaded
sblanck
parents:
diff changeset
85
93451f832736 Uploaded
sblanck
parents:
diff changeset
86 # Open the html output file
93451f832736 Uploaded
sblanck
parents:
diff changeset
87 #file.conn = file(diag.html, open="w")
93451f832736 Uploaded
sblanck
parents:
diff changeset
88
93451f832736 Uploaded
sblanck
parents:
diff changeset
89 #writeLines( c("<html><body>"), file.conn)
93451f832736 Uploaded
sblanck
parents:
diff changeset
90
93451f832736 Uploaded
sblanck
parents:
diff changeset
91 # Perform deseq analysis on each study
93451f832736 Uploaded
sblanck
parents:
diff changeset
92 #for(i in 1:length(listfiles))
93451f832736 Uploaded
sblanck
parents:
diff changeset
93 #{
93451f832736 Uploaded
sblanck
parents:
diff changeset
94 # f=listfiles[i]
93451f832736 Uploaded
sblanck
parents:
diff changeset
95 # fname=listfilenames[i]
93451f832736 Uploaded
sblanck
parents:
diff changeset
96 # study_name=unlist(strsplit(fname,"[.]"))[1]
93451f832736 Uploaded
sblanck
parents:
diff changeset
97 # print(paste0("study.name ",study_name))
93451f832736 Uploaded
sblanck
parents:
diff changeset
98 # d <- read.table(f, sep=" ", header=TRUE, row.names=1)
93451f832736 Uploaded
sblanck
parents:
diff changeset
99 # conds<-sapply(strsplit(colnames(d),"[.]"),FUN=function(x) x[1])
93451f832736 Uploaded
sblanck
parents:
diff changeset
100 # if (length(unique(conds)) != 2) {
93451f832736 Uploaded
sblanck
parents:
diff changeset
101 # warning(as.data.frame(strsplit(colnames(d),"[.]")))
93451f832736 Uploaded
sblanck
parents:
diff changeset
102 # stop("You can only have two columns types: ", paste(conds,collapse=" "))
93451f832736 Uploaded
sblanck
parents:
diff changeset
103 # }
93451f832736 Uploaded
sblanck
parents:
diff changeset
104 # if (!identical(sort(comparison), sort(unique(conds)))) {
93451f832736 Uploaded
sblanck
parents:
diff changeset
105 # stop("Column types must use the two names from Comparison type, and vice versa. Must have at least one of each in the Column types.\nColumn types: ", cargs[2], "\n", "Comparison type: ", cargs[3])
93451f832736 Uploaded
sblanck
parents:
diff changeset
106 # }
93451f832736 Uploaded
sblanck
parents:
diff changeset
107 # if (length(d) != length(conds)) {
93451f832736 Uploaded
sblanck
parents:
diff changeset
108 # stop("Number of total sample columns in counts file must correspond to the columns types field. E.g. if column types is 'kidney,kidney,liver,liver' then number of sample columns in counts file must be 4 as well.")
93451f832736 Uploaded
sblanck
parents:
diff changeset
109 # }
93451f832736 Uploaded
sblanck
parents:
diff changeset
110 #
93451f832736 Uploaded
sblanck
parents:
diff changeset
111 # cds <- newCountDataSet(d, conds)
93451f832736 Uploaded
sblanck
parents:
diff changeset
112 # cds <- estimateSizeFactors(cds)
93451f832736 Uploaded
sblanck
parents:
diff changeset
113 #
93451f832736 Uploaded
sblanck
parents:
diff changeset
114 # cdsBlind <- estimateDispersions( cds, method="blind" )
93451f832736 Uploaded
sblanck
parents:
diff changeset
115 #
93451f832736 Uploaded
sblanck
parents:
diff changeset
116 # if (length(conds) != 2) {
93451f832736 Uploaded
sblanck
parents:
diff changeset
117 # cds <- estimateDispersions( cds )
93451f832736 Uploaded
sblanck
parents:
diff changeset
118 # norep = FALSE
93451f832736 Uploaded
sblanck
parents:
diff changeset
119 # }
93451f832736 Uploaded
sblanck
parents:
diff changeset
120 #
93451f832736 Uploaded
sblanck
parents:
diff changeset
121 # if (length(conds) == 2) {
93451f832736 Uploaded
sblanck
parents:
diff changeset
122 # cds <- estimateDispersions( cds, method=method, sharingMode=mod, fitType="parametric" )
93451f832736 Uploaded
sblanck
parents:
diff changeset
123 # norep = TRUE
93451f832736 Uploaded
sblanck
parents:
diff changeset
124 # }
93451f832736 Uploaded
sblanck
parents:
diff changeset
125 #
93451f832736 Uploaded
sblanck
parents:
diff changeset
126 # filter<-HTSFilter(cds, plot=FALSE)
93451f832736 Uploaded
sblanck
parents:
diff changeset
127 # cds.filter<-filter$filteredData
93451f832736 Uploaded
sblanck
parents:
diff changeset
128 # on.index<-which(filter$on==1)
93451f832736 Uploaded
sblanck
parents:
diff changeset
129 #
93451f832736 Uploaded
sblanck
parents:
diff changeset
130 # res<-as.data.frame(matrix(NA,nrow=nrow(cds),ncol=ncol(cds)))
93451f832736 Uploaded
sblanck
parents:
diff changeset
131 # nbT <- nbinomTest(cds.filter, comparison[1], comparison[2])
93451f832736 Uploaded
sblanck
parents:
diff changeset
132 # colnames(res)<-colnames(nbT)
93451f832736 Uploaded
sblanck
parents:
diff changeset
133 # res[on.index,]<-nbT
93451f832736 Uploaded
sblanck
parents:
diff changeset
134 # #write.table(res[order(res$padj), ], file=outputfile, quote=FALSE, row.names=FALSE, sep="\t")
93451f832736 Uploaded
sblanck
parents:
diff changeset
135 #
93451f832736 Uploaded
sblanck
parents:
diff changeset
136 #
93451f832736 Uploaded
sblanck
parents:
diff changeset
137 # temp.pval.plot = file.path( html.files.path, paste("PvalHist",i,".png",sep=""))
93451f832736 Uploaded
sblanck
parents:
diff changeset
138 # png( temp.pval.plot, width=500, height=500 )
93451f832736 Uploaded
sblanck
parents:
diff changeset
139 # hist(res$pval, breaks=100, col="skyblue", border="slateblue", main="")
93451f832736 Uploaded
sblanck
parents:
diff changeset
140 # dev.off()
93451f832736 Uploaded
sblanck
parents:
diff changeset
141 #
93451f832736 Uploaded
sblanck
parents:
diff changeset
142 # writeLines( c("<h2>P-value histogram for ",study_name,"</h2>"), file.conn)
93451f832736 Uploaded
sblanck
parents:
diff changeset
143 # writeLines( c("<img src='PvalHist",i,".png'><br/><br/>"), file.conn)
93451f832736 Uploaded
sblanck
parents:
diff changeset
144 #
93451f832736 Uploaded
sblanck
parents:
diff changeset
145 # #on enregistre la p-value
93451f832736 Uploaded
sblanck
parents:
diff changeset
146 # rawpval[[study_name]]<-res$pval
93451f832736 Uploaded
sblanck
parents:
diff changeset
147 # DE[[study_name]]<-ifelse(res$padj<=alpha,1,0)
93451f832736 Uploaded
sblanck
parents:
diff changeset
148 # FC[[study_name]]<-res$log2FoldChange
93451f832736 Uploaded
sblanck
parents:
diff changeset
149 #
93451f832736 Uploaded
sblanck
parents:
diff changeset
150 # i=i+1
93451f832736 Uploaded
sblanck
parents:
diff changeset
151 #}
93451f832736 Uploaded
sblanck
parents:
diff changeset
152
93451f832736 Uploaded
sblanck
parents:
diff changeset
153
93451f832736 Uploaded
sblanck
parents:
diff changeset
154 # combinations
93451f832736 Uploaded
sblanck
parents:
diff changeset
155 library(metaRNASeq)
93451f832736 Uploaded
sblanck
parents:
diff changeset
156 fishcomb<-fishercomb(rawpval, BHth=alpha)
93451f832736 Uploaded
sblanck
parents:
diff changeset
157 warning(length(rawpval))
93451f832736 Uploaded
sblanck
parents:
diff changeset
158 invnormcomb<-invnorm(rawpval, nrep=c(8,8), BHth=alpha)
93451f832736 Uploaded
sblanck
parents:
diff changeset
159 #DE[["fishercomb"]]<-ifelse(fishcomb$adjpval<=alpha,1,0)
93451f832736 Uploaded
sblanck
parents:
diff changeset
160 #DE[["invnormcomb"]]<-ifelse(invnormcomb$adjpval<=alpha,1,0)
93451f832736 Uploaded
sblanck
parents:
diff changeset
161
93451f832736 Uploaded
sblanck
parents:
diff changeset
162 signsFC<-mapply(FC,FUN=function(x) sign(x))
93451f832736 Uploaded
sblanck
parents:
diff changeset
163 sumsigns<-apply(signsFC,1,sum)
93451f832736 Uploaded
sblanck
parents:
diff changeset
164 commonsgnFC<-ifelse(abs(sumsigns)==dim(signsFC)[2],sign(sumsigns),0)
93451f832736 Uploaded
sblanck
parents:
diff changeset
165
93451f832736 Uploaded
sblanck
parents:
diff changeset
166 DEresults <- data.frame(DE=DE,"DE.fishercomb"=ifelse(fishcomb$adjpval<=alpha,1,0),"DE.invnorm"=ifelse(invnormcomb$adjpval<=alpha,1,0))
93451f832736 Uploaded
sblanck
parents:
diff changeset
167
93451f832736 Uploaded
sblanck
parents:
diff changeset
168 unionDE <- unique(c(fishcomb$DEindices,invnormcomb$DEindices))
93451f832736 Uploaded
sblanck
parents:
diff changeset
169 FC.selecDE <- data.frame(DEresults[unionDE,],FC[unionDE,],signFC=commonsgnFC[unionDE])
93451f832736 Uploaded
sblanck
parents:
diff changeset
170 keepDE <- FC.selecDE[which(abs(FC.selecDE$signFC)==1),]
93451f832736 Uploaded
sblanck
parents:
diff changeset
171
93451f832736 Uploaded
sblanck
parents:
diff changeset
172 fishcomb_de <- rownames(keepDE)[which(keepDE[,"DE.fishercomb"]==1)]
93451f832736 Uploaded
sblanck
parents:
diff changeset
173 invnorm_de <- rownames(keepDE)[which(keepDE[,"DE.invnorm"]==1)]
93451f832736 Uploaded
sblanck
parents:
diff changeset
174 indstudy_de = list()
93451f832736 Uploaded
sblanck
parents:
diff changeset
175 for (i in 1:length(listfiles)) {
93451f832736 Uploaded
sblanck
parents:
diff changeset
176 currentIndstudy_de = rownames(keepDE)[which(keepDE[,i]==1)]
93451f832736 Uploaded
sblanck
parents:
diff changeset
177 indstudy_de[[listfilenames[i]]]=currentIndstudy_de
93451f832736 Uploaded
sblanck
parents:
diff changeset
178 }
93451f832736 Uploaded
sblanck
parents:
diff changeset
179
93451f832736 Uploaded
sblanck
parents:
diff changeset
180 IDDIRRfishcomb=IDD.IRR(fishcomb_de,indstudy_de)
93451f832736 Uploaded
sblanck
parents:
diff changeset
181 IDDIRRinvnorm=IDD.IRR(invnorm_de,indstudy_de)
93451f832736 Uploaded
sblanck
parents:
diff changeset
182
93451f832736 Uploaded
sblanck
parents:
diff changeset
183 #conflits<-data.frame(ID=listData[[1]][rownames(DEresults),1],Fishercomb=DEresults[["DE.fishercomb"]],Invnormcomb=DEresults[["DE.invnorm"]],sign=commonsgnFC)
93451f832736 Uploaded
sblanck
parents:
diff changeset
184 conflits<-data.frame(ID=listData[[1]][rownames(DEresults),1],DE=DEresults,FC=FC,signFC=commonsgnFC)
93451f832736 Uploaded
sblanck
parents:
diff changeset
185 #write DE outputfile
93451f832736 Uploaded
sblanck
parents:
diff changeset
186 write.table(conflits, outputfile,sep="\t",,row.names=FALSE)
93451f832736 Uploaded
sblanck
parents:
diff changeset
187 library(VennDiagram)
93451f832736 Uploaded
sblanck
parents:
diff changeset
188 DE_num=apply(DEresults, 2, FUN=function(x) which(x==1))
93451f832736 Uploaded
sblanck
parents:
diff changeset
189 venn.plot<-venn.diagram(x=as.list(DE_num),filename=NULL, col="black", fill=1:length(DE_num)+1,alpha=0.6)
93451f832736 Uploaded
sblanck
parents:
diff changeset
190 temp.venn.plot = file.path( html.files.path, paste("venn.png"))
93451f832736 Uploaded
sblanck
parents:
diff changeset
191 png(temp.venn.plot,width=500,height=500)
93451f832736 Uploaded
sblanck
parents:
diff changeset
192 grid.draw(venn.plot)
93451f832736 Uploaded
sblanck
parents:
diff changeset
193 dev.off()
93451f832736 Uploaded
sblanck
parents:
diff changeset
194
93451f832736 Uploaded
sblanck
parents:
diff changeset
195 library(jsonlite)
93451f832736 Uploaded
sblanck
parents:
diff changeset
196 matrixConflits=as.matrix(conflits)
93451f832736 Uploaded
sblanck
parents:
diff changeset
197 datajson=toJSON(matrixConflits,pretty = TRUE)
93451f832736 Uploaded
sblanck
parents:
diff changeset
198 summaryFishcombjson=toJSON(as.matrix(t(IDDIRRfishcomb)),pretty = TRUE)
93451f832736 Uploaded
sblanck
parents:
diff changeset
199 summaryinvnormjson=toJSON(as.matrix(t(IDDIRRinvnorm)),pretty = TRUE)
93451f832736 Uploaded
sblanck
parents:
diff changeset
200
93451f832736 Uploaded
sblanck
parents:
diff changeset
201
93451f832736 Uploaded
sblanck
parents:
diff changeset
202 #vennsplit=strsplit(result.venn,split="/")[[1]]
93451f832736 Uploaded
sblanck
parents:
diff changeset
203 #venn=paste0("./",vennsplit[length(vennsplit)])
93451f832736 Uploaded
sblanck
parents:
diff changeset
204
93451f832736 Uploaded
sblanck
parents:
diff changeset
205
93451f832736 Uploaded
sblanck
parents:
diff changeset
206 vennFilename="venn.png"
93451f832736 Uploaded
sblanck
parents:
diff changeset
207 vennFile=file.path(html.files.path,vennFilename)
93451f832736 Uploaded
sblanck
parents:
diff changeset
208 htmlfile=readChar(result.template, file.info(result.template)$size)
93451f832736 Uploaded
sblanck
parents:
diff changeset
209 htmlfile=gsub(x=htmlfile,pattern = "###DATAJSON###",replacement = datajson, fixed = TRUE)
93451f832736 Uploaded
sblanck
parents:
diff changeset
210 htmlfile=gsub(x=htmlfile,pattern = "###FISHSUMMARYJSON###",replacement = summaryFishcombjson, fixed = TRUE)
93451f832736 Uploaded
sblanck
parents:
diff changeset
211 htmlfile=gsub(x=htmlfile,pattern = "###INVSUMMARYJSON###",replacement = summaryinvnormjson, fixed = TRUE)
93451f832736 Uploaded
sblanck
parents:
diff changeset
212 htmlfile=gsub(x=htmlfile,pattern = "###VENN###",replacement = vennFilename, fixed = TRUE)
93451f832736 Uploaded
sblanck
parents:
diff changeset
213 write(htmlfile,result.html)
93451f832736 Uploaded
sblanck
parents:
diff changeset
214
93451f832736 Uploaded
sblanck
parents:
diff changeset
215 #library(VennDiagram)
93451f832736 Uploaded
sblanck
parents:
diff changeset
216 #flog.threshold(ERROR)
93451f832736 Uploaded
sblanck
parents:
diff changeset
217 #
93451f832736 Uploaded
sblanck
parents:
diff changeset
218 ##venn.plot<-venn.diagram(x = c(res[c(1:(length(res)-3))],meta=list(res$Meta)),filename = v, col = "black", fill = c(1:(length(res)-2)), margin=0.05, alpha = 0.6,imagetype = "png")
93451f832736 Uploaded
sblanck
parents:
diff changeset
219 #dir.create(result.path, showWarnings = TRUE, recursive = FALSE)
93451f832736 Uploaded
sblanck
parents:
diff changeset
220 #
93451f832736 Uploaded
sblanck
parents:
diff changeset
221 #showVenn<-function(liste,file)
93451f832736 Uploaded
sblanck
parents:
diff changeset
222 #{
93451f832736 Uploaded
sblanck
parents:
diff changeset
223 # venn.plot<-venn.diagram(x = liste,
93451f832736 Uploaded
sblanck
parents:
diff changeset
224 # filename = vennFilename, col = "black",
93451f832736 Uploaded
sblanck
parents:
diff changeset
225 # fill = 1:length(liste)+1,
93451f832736 Uploaded
sblanck
parents:
diff changeset
226 # margin=0.05, alpha = 0.6,imagetype = "png")
93451f832736 Uploaded
sblanck
parents:
diff changeset
227 ## png(file);
93451f832736 Uploaded
sblanck
parents:
diff changeset
228 ## grid.draw(venn.plot);
93451f832736 Uploaded
sblanck
parents:
diff changeset
229 ## dev.off();
93451f832736 Uploaded
sblanck
parents:
diff changeset
230 #
93451f832736 Uploaded
sblanck
parents:
diff changeset
231 #}
93451f832736 Uploaded
sblanck
parents:
diff changeset
232 #
93451f832736 Uploaded
sblanck
parents:
diff changeset
233 #l=list()
93451f832736 Uploaded
sblanck
parents:
diff changeset
234 #for(i in 1:length(esets))
93451f832736 Uploaded
sblanck
parents:
diff changeset
235 #{
93451f832736 Uploaded
sblanck
parents:
diff changeset
236 # l[[paste("study",i,sep="")]]<-res[[i]]
93451f832736 Uploaded
sblanck
parents:
diff changeset
237 #}
93451f832736 Uploaded
sblanck
parents:
diff changeset
238 #l[["Meta"]]=res[[length(res)-1]]
93451f832736 Uploaded
sblanck
parents:
diff changeset
239 #showVenn(l,vennFile)
93451f832736 Uploaded
sblanck
parents:
diff changeset
240 #file.copy(vennFilename,result.path)
93451f832736 Uploaded
sblanck
parents:
diff changeset
241
93451f832736 Uploaded
sblanck
parents:
diff changeset
242
93451f832736 Uploaded
sblanck
parents:
diff changeset
243 #writeLines( c("<h2>Venn Plot</h2>"), file.conn)
93451f832736 Uploaded
sblanck
parents:
diff changeset
244 #writeLines( c("<img src='venn.png'><br/><br/>"), file.conn)
93451f832736 Uploaded
sblanck
parents:
diff changeset
245 #writeLines( c("</body></html>"), file.conn)
93451f832736 Uploaded
sblanck
parents:
diff changeset
246 #close(file.conn)
93451f832736 Uploaded
sblanck
parents:
diff changeset
247 #print("passe6")
93451f832736 Uploaded
sblanck
parents:
diff changeset
248 #sink(NULL)