annotate NGSrich_0.5.5/R/summarize_enrichment.R @ 0:89ad0a9cca52 default tip

Uploaded
author pfrommolt
date Mon, 21 Nov 2011 08:12:19 -0500
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
1 #!/usr/bin/Rscript
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
2
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
3 infile=as.character(commandArgs()[6])
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
4 outdir=as.character(commandArgs()[7])
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
5 poor=as.numeric(commandArgs()[8])
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
6 high=as.numeric(commandArgs()[9])
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
7
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
8
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
9 outfile=paste(outdir,"/summary.html",sep="")
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
10 cutoff=c(poor,high)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
11
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
12 xmlfiles<-bedfiles<-character(0)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
13 indirs<-as.character(readLines(infile))
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
14 for(thisdir in indirs){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
15 thisdir=paste(thisdir,"/data",sep="")
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
16 xmlfiles=c(xmlfiles,list.files(thisdir,pattern=".xml",full.names=TRUE))
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
17 bedfiles=c(bedfiles,list.files(thisdir,pattern=".bed",full.names=TRUE))
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
18 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
19 nsamples<-length(indirs)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
20
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
21 samplenames<-character(0)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
22 diffs<-matrix(nrow=5,ncol=nsamples)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
23 averagecov<-stddevcov<-targetsize<-numreads_total<-numreads_target<-numeric(0)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
24 sample1<-sample5<-sample10<-sample20<-sample30<-numeric(0)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
25
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
26
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
27 ##Read XML input files
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
28 xmltag<-function(line){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
29 return(strsplit(strsplit(line,">")[[1]][2],"</")[[1]][1])
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
30 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
31 i=1
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
32 nextfold=0
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
33 for(file in xmlfiles){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
34 numreads<-numeric(0)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
35 inlines<-readLines(file)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
36 for(line in inlines){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
37 if(length(grep("SampleName",line)>0)){samplenames<-c(samplenames,xmltag(line))}
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
38 if(length(grep("NumberReads",line)>0)){numreads<-c(numreads,as.numeric(xmltag(line)))}
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
39 if(length(grep("AvTargetCoverage",line)>0)){averagecov=c(averagecov,as.numeric(xmltag(line)))}
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
40 if(length(grep("SDTargetCoverage",line)>0)){stddevcov=c(stddevcov,as.numeric(xmltag(line)))}
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
41 if(length(grep("TargetSize",line)>0)){targetsize=as.numeric(xmltag(line))}
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
42 if(length(grep("<from1x>",line)>0)){nextfold=1}
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
43 else{
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
44 if((nextfold==1) && length(grep("PercBases",line))>0){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
45 sample1<-c(sample1,as.numeric(xmltag(line)))
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
46 nextfold=0
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
47 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
48 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
49 if(length(grep("<from5x>",line)>0)){nextfold=5}
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
50 else{
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
51 if((nextfold==5) && length(grep("PercBases",line))>0){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
52 sample5<-c(sample5,as.numeric(xmltag(line)))
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
53 nextfold=0
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
54 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
55 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
56 if(length(grep("<from10x>",line)>0)){nextfold=10}
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
57 else{
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
58 if((nextfold==10) && length(grep("PercBases",line))>0){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
59 sample10<-c(sample10,as.numeric(xmltag(line)))
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
60 nextfold=0
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
61 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
62 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
63 if(length(grep("<from20x>",line)>0)){nextfold=20}
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
64 else{
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
65 if((nextfold==20) && length(grep("PercBases",line))>0){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
66 sample20<-c(sample20,as.numeric(xmltag(line)))
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
67 nextfold=0
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
68 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
69 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
70 if(length(grep("<from30x>",line)>0)){nextfold=30}
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
71 else{
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
72 if((nextfold==30) && length(grep("PercBases",line))>0){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
73 sample30<-c(sample30,as.numeric(xmltag(line)))
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
74 nextfold=0
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
75 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
76 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
77 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
78 numreads_total<-c(numreads_total,numreads[1])
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
79 numreads_target<-c(numreads_target,numreads[2])
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
80 diffs[,i]<-c(sample30[i],sample20[i]-sample30[i],sample10[i]-sample20[i],sample5[i]-sample10[i],sample1[i]-sample5[i])
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
81 i=i+1
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
82 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
83
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
84
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
85 ##Create barplot
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
86 rownames(diffs)<-c("Covered 30x","Covered 20x","Covered 10x","Covered 5x","Covered 1x")
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
87 plot_samplenames<-samplenames
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
88 s=0
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
89 for(sname in plot_samplenames){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
90 s=s+1
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
91 if(nchar(sname)>10){plot_samplenames[s]<-paste("Sample ",s,"\n(table above)",sep="")}
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
92 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
93 colnames(diffs)<-plot_samplenames
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
94 png(file=paste(outdir,"/summary_plot.png",sep=""),width=66*(4+nsamples),height=400)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
95 par(oma=c(1,0,0,1))
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
96 barplot(diffs,
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
97 legend=TRUE,
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
98 col=c("darkblue","steelblue1","tomato1","tomato3","tomato4"),
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
99 xlim=c(0,4+nsamples),ylim=c(0,100),
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
100 ylab="Percentage",las=2 ) #,
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
101 # args.legend=list(x=nsamples+4,y=80))
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
102 dev.off()
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
103
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
104
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
105
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
106 ##Read BED files
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
107 sametarget=TRUE
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
108 thisbed<-read.table(bedfiles[1],stringsAsFactors=FALSE)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
109 genes<-levels(as.factor(thisbed$V4))
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
110 meancov<-matrix(nrow=length(genes),ncol=length(bedfiles))
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
111 chr<-start<-end<-character(0)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
112
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
113 i=1
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
114 for(file in bedfiles){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
115 thisbed<-read.table(file,stringsAsFactors=FALSE)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
116 genes_thissample<-levels(as.factor(thisbed$V4))
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
117 if(length(genes_thissample)!=length(genes)){sametarget=FALSE}
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
118 for(j in 1:length(genes)){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
119 thisgene<-thisbed[thisbed$V4==genes[j],]
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
120 chr[j]<-thisgene[1,1]
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
121 start[j]<-thisgene[1,2]
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
122 end[j]<-thisgene[1,3]
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
123 meancov[j,i]<-as.numeric(mean(thisgene[,5]))
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
124 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
125 i=i+1
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
126 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
127
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
128 meancov<-data.frame(chr,start,end,genes,meancov)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
129 for(i in 1:nrow(meancov)){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
130 print(i)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
131 meancov$ave[i]<-round(mean(as.numeric(meancov[i,4+(1:nsamples)])),4)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
132 meancov$stddev[i]<-round(sd(as.numeric(meancov[i,4+(1:nsamples)])),4)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
133 meancov$mini[i]<-round(min(as.numeric(meancov[i,4+(1:nsamples)])),4)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
134 meancov$maxi[i]<-round(max(as.numeric(meancov[i,4+(1:nsamples)])),4)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
135 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
136 meancov_sorted<-meancov[order(meancov$ave),]
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
137 poorly_all<-meancov_sorted[meancov_sorted$max<cutoff[1],]
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
138
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
139
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
140 ##Write HTML output
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
141 cat(file=outfile,paste(
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
142 "<html>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
143 "<head>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
144 "<title>Enrichment Performance</title>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
145 "<style type=\"text/css\">\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
146 "body{font-family:sans-serif;}\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
147 "h2,h3{color: darkblue;}\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
148 "a{color: darkblue;}\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
149 " table.output td{\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
150 " padding: 4px; background-color: lightskyblue;\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
151 " border: 1px solid #000; border-color: darkblue;\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
152 "}\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
153 "</Style>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
154 "</head>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
155 "<body>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
156 "<h2>Target Enrichment Performance</h2><br/>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
157 "<table class=\"output\">\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
158 " <tr>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
159 " <td><b>Sample</b></td><td><b># Reads</b></td><td><b># On Target</b></td><td><b>Coverage Mean</b></td><td><b>Coverage Std Dev</b></td><td><b>Covered 1x</b></td><td><b>Covered 5x</b></td><td><b>Covered 10x</b></td><td><b>Covered 20x</b></td><td><b>Covered 30x</b></td><td><b>Details</b></td>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
160 "</tr>\n",sep=""))
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
161 for(i in 1:nsamples){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
162 cat(file=outfile,paste(
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
163 "<tr><td>",samplenames[i],"</td><td>",numreads_total[i],"</td>",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
164 "<td>",numreads_target[i],"</td><td>",averagecov[i],"</td>",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
165 "<td>",stddevcov[i],"</td><td>",sample1[i],"</td><td>",sample5[i],"</td>",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
166 "<td>",sample10[i],"</td><td>",sample20[i],"</td><td>",sample30[i],"</td>",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
167 "<td><a href=\"",rev(strsplit(indirs[i],"/")[[1]])[1],"/",samplenames[i],"_enrichment.html\">Show</a></td></tr>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
168 sep=""),append=TRUE)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
169 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
170 cat(file=outfile,paste(
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
171 "</table>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
172 "<br/><br/>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
173 "<h2>Target Base Percentage Covered</h2>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
174 "<img src=\"summary_plot.png\"></img>\n",sep=""),append=TRUE)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
175 if(!sametarget){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
176 warning("Target regions are not the same for all samples.")
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
177 } else{
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
178 cat(file=outfile,paste(
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
179 "<h2>Poorly Covered in All Samples (Cutoff: ",cutoff[1],"x)</h2>\n",sep=""),append=TRUE)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
180 if(nrow(poorly_all)==0){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
181 cat(file=outfile,"<p>Nothing found for this cutoff.</p>",append=TRUE)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
182 } else{
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
183 cat(file=outfile,paste(
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
184 "<table class=\"output\">\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
185 "<tr>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
186 "<td><b>Target Region</b></td><td><b>Gene</b></td><td><b>Mean Across Samples</b></td><td><b>Std Dev Across Samples</b></td>\n",sep=""),append=TRUE)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
187 for(i in 1:nrow(poorly_all)){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
188 cat(file=outfile,paste(
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
189 "<tr>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
190 "<td>",poorly_all$chr[i],":",poorly_all$start[i],"-",poorly_all$end[i],"</td>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
191 "<td>",poorly_all$genes[i],"</td>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
192 "<td>",poorly_all$ave[i],"</td>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
193 "<td>",poorly_all$stddev[i],"</td>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
194 "<tr>\n",sep=""),append=TRUE)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
195 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
196 cat(file=outfile,"</table>\n",append=TRUE)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
197 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
198
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
199 meancov_sorted<-meancov[order(meancov$ave,decreasing=TRUE),] ##Highly Covered
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
200 highly_all<-meancov_sorted[meancov_sorted$min>cutoff[2],]
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
201 cat(file=outfile,paste(
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
202 "<h2>Highly Covered in All Samples (Cutoff: ",cutoff[2],"x)</h2>\n",sep=""),append=TRUE)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
203 if(nrow(highly_all)==0){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
204 cat(file=outfile,"<p>Nothing found for this cutoff.</p>",append=TRUE)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
205 } else{
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
206 cat(file=outfile,paste("<table class=\"output\">\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
207 "<tr>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
208 "<td><b>Target Region</b></td><td><b>Gene</b></td><td><b>Mean Across Sample</b></td><td><b>Std Dev Across Samples</b></td>\n",sep=""),append=TRUE)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
209 for(i in 1:nrow(highly_all)){
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
210 cat(file=outfile,paste(
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
211 "<tr>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
212 "<td>",highly_all$chr[i],":",highly_all$start[i],"-",highly_all$end[i],"</td>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
213 "<td>",highly_all$genes[i],"</td>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
214 "<td>",highly_all$ave[i],"</td>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
215 "<td>",highly_all$stddev[i],"</td>\n",
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
216 "<tr>\n",sep=""),append=TRUE)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
217 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
218 cat(file=outfile,"</table>\n",append=TRUE)
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
219 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
220
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
221 }
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
222
89ad0a9cca52 Uploaded
pfrommolt
parents:
diff changeset
223 cat(file=outfile,"</body>\n</html>\n",append=TRUE)