annotate quantp.r @ 0:f1db758949f4 draft

planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
author galaxyp
date Fri, 14 Sep 2018 12:22:13 -0400
parents
children dec87511835e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
1 #***************************************************************************************************************************************
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
2 # Functions: Start
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
3 #***************************************************************************************************************************************
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
4
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
5 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
6 # PCA
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
7 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
8 multisample_PCA = function(df, sampleinfo_df, outfile)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
9 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
10 tempdf = df[,-1];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
11 tempcol = colnames(tempdf);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
12 tempgrp = sampleinfo_df[tempcol,2];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
13 tempdf = t(tempdf) %>% as.data.frame();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
14 tempdf[is.na(tempdf)] = 0;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
15 tempdf$Group = tempgrp;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
16 png(outfile, width = 6, height = 6, units = 'in', res=300);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
17 # bitmap(outfile, "png16m");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
18 g = autoplot(prcomp(select(tempdf, -Group)), data = tempdf, colour = 'Group', size=3);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
19 plot(g);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
20 dev.off();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
21 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
22
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
23 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
24 # Regression and Cook's distance
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
25 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
26 singlesample_regression = function(PE_TE_data,htmloutfile, append=TRUE)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
27 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
28 rownames(PE_TE_data) = PE_TE_data$PE_ID;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
29 regmodel = lm(PE_abundance~TE_abundance, data=PE_TE_data);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
30 regmodel_summary = summary(regmodel);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
31
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
32 cat("<font><h3>Linear Regression model fit between Proteome and Transcriptome data</h3></font>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
33 "<p>Assuming a linear relationship between Proteome and Transcriptome data, we here fit a linear regression model.</p>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
34 '<table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; "> <tr bgcolor="#7a0019"><th><font color=#ffcc33>Parameter</font></th><th><font color=#ffcc33>Value</font></th></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
35 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
36
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
37 cat("<tr><td>Formula</td><td>","PE_abundance~TE_abundance","</td></tr>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
38 "<tr><td colspan='2' align='center'> <b>Coefficients</b></td>","</tr>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
39 "<tr><td>",names(regmodel$coefficients[1]),"</td><td>",regmodel$coefficients[1]," (Pvalue:", regmodel_summary$coefficients[1,4],")","</td></tr>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
40 "<tr><td>",names(regmodel$coefficients[2]),"</td><td>",regmodel$coefficients[2]," (Pvalue:", regmodel_summary$coefficients[2,4],")","</td></tr>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
41 "<tr><td colspan='2' align='center'> <b>Model parameters</b></td>","</tr>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
42 "<tr><td>Residual standard error</td><td>",regmodel_summary$sigma," (",regmodel_summary$df[2]," degree of freedom)</td></tr>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
43 "<tr><td>F-statistic</td><td>",regmodel_summary$fstatistic[1]," ( on ",regmodel_summary$fstatistic[2]," and ",regmodel_summary$fstatistic[3]," degree of freedom)</td></tr>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
44 "<tr><td>R-squared</td><td>",regmodel_summary$r.squared,"</td></tr>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
45 "<tr><td>Adjusted R-squared</td><td>",regmodel_summary$adj.r.squared,"</td></tr>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
46 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
47
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
48 cat("</table>\n", file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
49
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
50 cat(
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
51 "<font color='#ff0000'><h3>Regression and diagnostics plots</h3></font>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
52 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
53
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
54 outplot = paste(outdir,"/PE_TE_lm_1.png",sep="",collapse="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
55 png(outplot, width = 10, height = 10, units = 'in',res=300);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
56 # bitmap(outplot, "png16m");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
57 par(mfrow=c(1,1));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
58 plot(regmodel, 1, cex.lab=1.5);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
59 dev.off();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
60
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
61 outplot = paste(outdir,"/PE_TE_lm_2.png",sep="",collapse="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
62 png(outplot,width = 10, height = 10, units = 'in', res=300);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
63 # bitmap(outplot, "png16m");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
64 par(mfrow=c(1,1));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
65 plot(regmodel, 2, cex.lab=1.5);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
66 dev.off();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
67
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
68 outplot = paste(outdir,"/PE_TE_lm_5.png",sep="",collapse="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
69 png(outplot, width = 10, height = 10, units = 'in',res=300);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
70 # bitmap(outplot, "png16m");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
71 par(mfrow=c(1,1));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
72 plot(regmodel, 5, cex.lab=1.5);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
73 dev.off();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
74
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
75 cat('<table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; ">', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
76
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
77 cat(
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
78 '<tr bgcolor="#7a0019"><th>', "<font color='#ffcc33'><h4>1) <u>Residuals vs Fitted plot</h4></font></u></th>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
79 '<th><font color=#ffcc33><h4>2) <u>Normal Q-Q plot of residuals</h4></font></u></th></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
80 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
81
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
82 cat(
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
83 '<tr><td align=center><img src="PE_TE_lm_1.png" width=600 height=600></td><td align=center><img src="PE_TE_lm_2.png" width=600 height=600></td></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
84 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
85
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
86 cat(
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
87 '<tr><td align=center>This plot checks for linear relationship assumptions.<br>If a horizontal line is observed without any distinct patterns, it indicates a linear relationship.</td>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
88 '<td align=center>This plot checks whether residuals are normally distributed or not.<br>It is good if the residuals points follow the straight dashed line i.e., do not deviate much from dashed line.</td></tr></table>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
89 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
90
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
91
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
92 #@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
93 # Residuals data
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
94 #@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
95 res_all = regmodel$residuals;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
96 res_mean = mean(res_all);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
97 res_sd = sd(res_all);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
98 res_diff = (res_all-res_mean);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
99 res_zscore = res_diff/res_sd;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
100 # res_outliers = res_all[which((res_zscore > 2)|(res_zscore < -2))]
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
101
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
102
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
103 tempind = which((res_zscore > 2)|(res_zscore < -2));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
104 res_PE_TE_data_no_outlier = PE_TE_data[-tempind,];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
105 res_PE_TE_data_no_outlier$residuals = res_all[-tempind];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
106 res_PE_TE_data_outlier = PE_TE_data[tempind,];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
107 res_PE_TE_data_outlier$residuals = res_all[tempind];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
108
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
109 # Save the complete table for download (influential_observations)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
110 temp_outlier_data = data.frame(res_PE_TE_data_outlier$PE_ID, res_PE_TE_data_outlier$TE_abundance, res_PE_TE_data_outlier$PE_abundance, res_PE_TE_data_outlier$residuals)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
111 colnames(temp_outlier_data) = c("Gene", "Transcript abundance", "Protein abundance", "Residual value")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
112 outdatafile = paste(outdir,"/PE_TE_outliers_residuals.txt", sep="", collapse="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
113 write.table(temp_outlier_data, file=outdatafile, row.names=F, sep="\t", quote=F);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
114
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
115
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
116 # Save the complete table for download (non influential_observations)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
117 temp_all_data = data.frame(PE_TE_data$PE_ID, PE_TE_data$TE_abundance, PE_TE_data$PE_abundance, res_all)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
118 colnames(temp_all_data) = c("Gene", "Transcript abundance", "Protein abundance", "Residual value")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
119 outdatafile = paste(outdir,"/PE_TE_abundance_residuals.txt", sep="", collapse="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
120 write.table(temp_all_data, file=outdatafile, row.names=F, sep="\t", quote=F);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
121
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
122
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
123 cat('<br><h2 id="inf_obs"><font color=#ff0000>Outliers based on the residuals from regression analysis</font></h2>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
124 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
125 cat('<table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; ">\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
126 '<tr bgcolor="#7a0019"><th colspan=2><font color=#ffcc33>Residuals from Regression</font></th></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
127 '<tr bgcolor="#7a0019"><th><font color=#ffcc33>Parameter</font></th><th><font color=#ffcc33>Value</font></th></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
128 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
129
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
130 cat("<tr><td>Mean Residual value</td><td>",res_mean,"</td></tr>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
131 "<tr><td>Standard deviation (Residuals)</td><td>",res_sd,"</td></tr>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
132 '<tr><td>Total outliers (Residual value > 2 standard deviation from the mean)</td><td>',length(tempind),' <font size=4>(<b><a href=PE_TE_outliers_residuals.txt target="_blank">Download these ',length(tempind),' data points with high residual values here</a></b>)</font></td>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
133 '<tr><td colspan=2 align=center><font size=4>(<b><a href=PE_TE_abundance_residuals.txt target="_blank">Download the complete residuals data here</a></b>)</font></td></td>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
134 "</table><br><br>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
135 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
136
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
137 #@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
138
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
139
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
140 cat('<br><br><table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; ">', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
141
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
142 cat(
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
143 '<tr bgcolor="#7a0019"><th><font color=#ffcc33><h4>3) <u>Residuals vs Leverage plot</h4></font></u></th></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
144 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
145
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
146 cat(
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
147 '<tr><td align=center><img src="PE_TE_lm_5.png" width=600 height=600></td></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
148 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
149
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
150 cat(
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
151 '<tr><td align=center>This plot is useful to identify any influential cases, that is outliers or extreme values.<br>They might influence the regression results upon inclusion or exclusion from the analysis.</td></tr></table><br>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
152 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
153
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
154
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
155
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
156 #^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
157 # Cook's Distance
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
158 #^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
159 cat('<hr/><h2 id="inf_obs"><font color=#ff0000>INFLUENTIAL OBSERVATIONS</font></h2>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
160 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
161 cat(
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
162 '<p><b>Cook\'s distance</b> computes the influence of each data point/observation on the predicted outcome. i.e. this measures how much the observation is influencing the fitted values.<br>In general use, those observations that have a <b>Cook\'s distance > than ', cookdist_upper_cutoff,' times the mean</b> may be classified as <b>influential.</b></p>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
163 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
164
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
165 cooksd <- cooks.distance(regmodel);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
166
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
167 outplot = paste(outdir,"/PE_TE_lm_cooksd.png",sep="",collapse="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
168 png(outplot, width = 10, height = 10, units = 'in', res=300);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
169 # bitmap(outplot, "png16m");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
170 par(mfrow=c(1,1));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
171 plot(cooksd, main="Influential Obs. by Cook\'s distance", ylab="Cook\'s distance", xlab="Observations", type="n") # plot cooks distance
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
172 sel_outlier=which(cooksd>=as.numeric(cookdist_upper_cutoff)*mean(cooksd, na.rm=T))
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
173 sel_nonoutlier=which(cooksd<as.numeric(cookdist_upper_cutoff)*mean(cooksd, na.rm=T))
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
174 points(sel_outlier, cooksd[sel_outlier],pch="*", cex=2, cex.lab=1.5, col="red")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
175 points(sel_nonoutlier, cooksd[sel_nonoutlier],pch="*", cex=2, cex.lab=1.5, col="black")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
176 abline(h = as.numeric(cookdist_upper_cutoff)*mean(cooksd, na.rm=T), col="red") # add cutoff line
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
177 #text(x=1:length(cooksd)+1, y=cooksd, labels=ifelse(cooksd>as.numeric(cookdist_upper_cutoff)*mean(cooksd, na.rm=T),names(cooksd),""), col="red", pos=2) # add labels
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
178 dev.off();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
179
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
180 cat(
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
181 '<img src="PE_TE_lm_cooksd.png" width=800 height=800>',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
182 '<br>In the above plot, observations above red line (',cookdist_upper_cutoff,' * mean Cook\'s distance) are influential. Genes that are outliers could be important. These observations influences the correlation values and regression coefficients<br><br>',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
183 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
184
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
185 tempind = which(cooksd>as.numeric(cookdist_upper_cutoff)*mean(cooksd, na.rm=T));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
186 PE_TE_data_no_outlier = PE_TE_data[-tempind,];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
187 PE_TE_data_no_outlier$cooksd = cooksd[-tempind];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
188 PE_TE_data_outlier = PE_TE_data[tempind,];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
189 PE_TE_data_outlier$cooksd = cooksd[tempind];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
190 a = sort(PE_TE_data_outlier$cooksd, decreasing=T, index.return=T);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
191 PE_TE_data_outlier_sorted = PE_TE_data_outlier[a$ix,];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
192
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
193 cat(
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
194 '<table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; "> <tr bgcolor="#7a0019"><th><font color=#ffcc33>Parameter</font></th><th><font color=#ffcc33>Value</font></th></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
195 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
196
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
197 # Save the complete table for download (influential_observations)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
198 temp_outlier_data = data.frame(PE_TE_data_outlier$PE_ID, PE_TE_data_outlier$TE_abundance, PE_TE_data_outlier$PE_abundance, PE_TE_data_outlier$cooksd)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
199 colnames(temp_outlier_data) = c("Gene", "Transcript abundance", "Protein abundance", "Cook's distance")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
200 outdatafile = paste(outdir,"/PE_TE_influential_observation.txt", sep="", collapse="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
201 write.table(temp_outlier_data, file=outdatafile, row.names=F, sep="\t", quote=F);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
202
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
203
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
204 # Save the complete table for download (non influential_observations)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
205 temp_no_outlier_data = data.frame(PE_TE_data_no_outlier$PE_ID, PE_TE_data_no_outlier$TE_abundance, PE_TE_data_no_outlier$PE_abundance, PE_TE_data_no_outlier$cooksd)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
206 colnames(temp_no_outlier_data) = c("Gene", "Transcript abundance", "Protein abundance", "Cook's distance")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
207 outdatafile = paste(outdir,"/PE_TE_non_influential_observation.txt", sep="", collapse="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
208 write.table(temp_no_outlier_data, file=outdatafile, row.names=F, sep="\t", quote=F);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
209
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
210
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
211 cat("<tr><td>Mean Cook\'s distance</td><td>",mean(cooksd, na.rm=T),"</td></tr>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
212 "<tr><td>Total influential observations (Cook\'s distance > ",cookdist_upper_cutoff," * mean Cook\'s distance)</td><td>",length(tempind),"</td>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
213
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
214 "<tr><td>Observations with Cook\'s distance < ",cookdist_upper_cutoff," * mean Cook\'s distance</td><td>",length(which(cooksd<as.numeric(cookdist_upper_cutoff)*mean(cooksd, na.rm=T))),"</td>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
215 "</table><br><br>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
216 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
217
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
218
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
219 #@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
220 # Scatter plot after removal of influential points
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
221 #@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
222 outplot = paste(outdir,"/AbundancePlot_scatter_without_outliers.png",sep="",collapse="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
223 min_lim = min(c(PE_TE_data$PE_abundance,PE_TE_data$TE_abundance));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
224 max_lim = max(c(PE_TE_data$PE_abundance,PE_TE_data$TE_abundance));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
225 png(outplot, width = 10, height = 10, units = 'in', res=300);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
226 # bitmap(outplot,"png16m");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
227 g = ggplot(PE_TE_data_no_outlier, aes(x=TE_abundance, y=PE_abundance))+geom_point() + geom_smooth() + xlab("Transcript abundance log fold-change") + ylab("Protein abundance log fold-change") + xlim(min_lim,max_lim) + ylim(min_lim,max_lim);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
228 suppressMessages(plot(g));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
229 dev.off();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
230
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
231 cat('<table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; "> <tr bgcolor="#7a0019"><th><font color=#ffcc33>Scatterplot: Before removal</font></th><th><font color=#ffcc33>Scatterplot: After removal</font></th></tr>\n', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
232 # Before
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
233 cat("<tr><td align=center><!--<font color='#ff0000'><h3>Scatter plot between Proteome and Transcriptome Abundance</h3></font>\n-->", '<img src="TE_PE_scatter.png" width=600 height=600></td>\n', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
234
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
235 # After
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
236 cat("<td align=center>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
237 '<img src="AbundancePlot_scatter_without_outliers.png" width=600 height=600></td></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
238 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
239 #@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
240
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
241
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
242 cor_result_pearson = cor.test(PE_TE_data_no_outlier[,"TE_abundance"], PE_TE_data_no_outlier[,"PE_abundance"], method = "pearson");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
243 cor_result_spearman = cor.test(PE_TE_data_no_outlier[,"TE_abundance"], PE_TE_data_no_outlier[,"PE_abundance"], method = "spearman");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
244 cor_result_kendall = cor.test(PE_TE_data_no_outlier[,"TE_abundance"], PE_TE_data_no_outlier[,"PE_abundance"], method = "kendall");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
245
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
246 cat('<tr><td>\n', file = htmloutfile, append=TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
247 singlesample_cor(PE_TE_data, htmloutfile, append=TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
248 cat('</td>\n', file = htmloutfile, append=TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
249
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
250
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
251 cat('<td><table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; "> <tr bgcolor="#7a0019"><th><font color=#ffcc33>Parameter</font></th><th><font color=#ffcc33>Method 1</font></th><th><font color=#ffcc33>Method 2</font></th><th><font color=#ffcc33>Method 3</font></th></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
252 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
253
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
254 cat(
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
255 "<tr><td>Correlation method</td><td>",cor_result_pearson$method,"</td><td>",cor_result_spearman$method,"</td><td>",cor_result_kendall$method,"</td></tr>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
256 "<tr><td>Correlation coefficient</td><td>",cor_result_pearson$estimate,"</td><td>",cor_result_spearman$estimate,"</td><td>",cor_result_kendall$estimate,"</td></tr>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
257 file = htmloutfile, append = TRUE)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
258 cat("</table></td></tr></table>\n", file = htmloutfile, append = TRUE)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
259
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
260
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
261
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
262 if(dim(PE_TE_data_outlier)[1]<10)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
263 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
264 tab_n_row = dim(PE_TE_data_outlier)[1];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
265 }else{
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
266 tab_n_row = 10;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
267 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
268
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
269 cat("<br><br><font size=5><b><a href='PE_TE_influential_observation.txt' target='_blank'>Download the complete list of influential observations</a></b></font>&nbsp;&nbsp;&nbsp;&nbsp;",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
270 "<font size=5><b><a href='PE_TE_non_influential_observation.txt' target='_blank'>Download the complete list (After removing influential points)</a></b></font><br>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
271 '<br><font color="brown"><h4>Top ',as.character(tab_n_row),' Influential observations (Cook\'s distance > ',cookdist_upper_cutoff,' * mean Cook\'s distance)</h4></font>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
272 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
273
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
274 cat('<table border=1 cellspacing=0 cellpadding=5> <tr bgcolor="#7a0019">\n', sep = "",file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
275 cat("<th><font color=#ffcc33>Gene</font></th><th><font color=#ffcc33>Protein Log Fold-Change</font></th><th><font color=#ffcc33>Transcript Log Fold-Change</font></th><th><font color=#ffcc33>Cook's Distance</font></th></tr>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
276 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
277
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
278
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
279 for(i in 1:tab_n_row)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
280 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
281 cat(
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
282 '<tr>','<td>',as.character(PE_TE_data_outlier_sorted[i,1]),'</td>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
283 '<td>',format(PE_TE_data_outlier_sorted[i,2], scientific=F),'</td>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
284 '<td>',PE_TE_data_outlier_sorted[i,4],'</td>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
285 '<td>',format(PE_TE_data_outlier_sorted[i,5], scientific=F),'</td></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
286 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
287 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
288 cat('</table><br><br>\n',file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
289
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
290
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
291 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
292
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
293
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
294
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
295 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
296 # Heatmap
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
297 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
298 singlesample_heatmap=function(PE_TE_data, htmloutfile, hm_nclust){
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
299 cat('<br><table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; "> <tr bgcolor="#7a0019"><th><font color=#ffcc33>Heatmap of PE and TE abundance values (Hierarchical clustering)</font></th><th><font color=#ffcc33>Number of clusters to extract: ',hm_nclust,'</font></th></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
300 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
301
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
302 hc=hclust(dist(as.matrix(PE_TE_data[,c("PE_abundance","TE_abundance")])))
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
303 hm_cluster = cutree(hc,k=hm_nclust);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
304
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
305 outplot = paste(outdir,"/PE_TE_heatmap.png",sep="",collapse="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
306 png(outplot, width = 10, height = 10, units = 'in', res=300);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
307 # bitmap(outplot, "png16m");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
308 par(mfrow=c(1,1));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
309 hmap = heatmap.2(as.matrix(PE_TE_data[,c("PE_abundance","TE_abundance")]), trace="none", cexCol=1, col=greenred(100),Colv=F, labCol=c("Proteins","Transcripts"), scale="col", hclustfun = hclust, distfun = dist);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
310 dev.off();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
311
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
312 cat('<tr><td align=center colspan="2"><img src="PE_TE_heatmap.png" width=800 height=800></td></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
313 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
314
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
315
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
316 temp_PE_TE_data = data.frame(PE_TE_data$PE_ID, PE_TE_data$TE_abundance, PE_TE_data$PE_abundance, hm_cluster);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
317 colnames(temp_PE_TE_data) = c("Gene", "Transcript abundance", "Protein abundance", "Cluster (Hierarchical clustering)")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
318 tempoutfile = paste(outdir,"/PE_TE_hc_clusterpoints.txt",sep="",collapse="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
319 write.table(temp_PE_TE_data, file=tempoutfile, row.names=F, quote=F, sep="\t", eol="\n")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
320
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
321
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
322 cat('<tr><td colspan="2" align=center><font size=5><a href="PE_TE_hc_clusterpoints.txt" target="_blank"><b>Download the hierarchical cluster list</b></a></font></td></tr></table>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
323 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
324 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
325
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
326
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
327 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
328 # K-means clustering
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
329 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
330 singlesample_kmeans=function(PE_TE_data, htmloutfile, nclust){
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
331 PE_TE_data_kdata = PE_TE_data;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
332 k1 = kmeans(PE_TE_data_kdata[,c("PE_abundance","TE_abundance")], nclust);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
333 outplot = paste(outdir,"/PE_TE_kmeans.png",sep="",collapse="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
334 png(outplot, width = 10, height = 10, units = 'in', res=300);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
335 # bitmap(outplot, "png16m");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
336 par(mfrow=c(1,1));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
337 scatter.smooth(PE_TE_data_kdata[,"TE_abundance"], PE_TE_data_kdata[,"PE_abundance"], xlab="Transcript Abundance", ylab="Protein Abundance", cex.lab=1.5);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
338 legend(1, 95, legend=c("Cluster 1", "Line 2"), col="red", lty=1:1, cex=0.8)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
339 legend(1, 95, legend="Cluster 2", col="green", lty=1:1, cex=0.8)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
340
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
341
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
342 ind=which(k1$cluster==1);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
343 points(PE_TE_data_kdata[ind,"TE_abundance"], PE_TE_data_kdata[ind,"PE_abundance"], col="red", pch=16);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
344 ind=which(k1$cluster==2);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
345 points(PE_TE_data_kdata[ind,"TE_abundance"], PE_TE_data_kdata[ind,"PE_abundance"], col="green", pch=16);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
346 ind=which(k1$cluster==3);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
347 points(PE_TE_data_kdata[ind,"TE_abundance"], PE_TE_data_kdata[ind,"PE_abundance"], col="blue", pch=16);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
348 ind=which(k1$cluster==4);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
349 points(PE_TE_data_kdata[ind,"TE_abundance"], PE_TE_data_kdata[ind,"PE_abundance"], col="cyan", pch=16);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
350 ind=which(k1$cluster==5);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
351 points(PE_TE_data_kdata[ind,"TE_abundance"], PE_TE_data_kdata[ind,"PE_abundance"], col="black", pch=16);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
352 ind=which(k1$cluster==6);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
353 points(PE_TE_data_kdata[ind,"TE_abundance"], PE_TE_data_kdata[ind,"PE_abundance"], col="brown", pch=16);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
354 ind=which(k1$cluster==7);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
355 points(PE_TE_data_kdata[ind,"TE_abundance"], PE_TE_data_kdata[ind,"PE_abundance"], col="gold", pch=16);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
356 ind=which(k1$cluster==8);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
357 points(PE_TE_data_kdata[ind,"TE_abundance"], PE_TE_data_kdata[ind,"PE_abundance"], col="thistle", pch=16);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
358 ind=which(k1$cluster==9);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
359 points(PE_TE_data_kdata[ind,"TE_abundance"], PE_TE_data_kdata[ind,"PE_abundance"], col="yellow", pch=16);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
360 ind=which(k1$cluster==10);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
361 points(PE_TE_data_kdata[ind,"TE_abundance"], PE_TE_data_kdata[ind,"PE_abundance"], col="orange", pch=16);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
362 dev.off();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
363
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
364 cat('<br><br><table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; "> <tr bgcolor="#7a0019"><th><font color=#ffcc33>K-mean clustering</font></th><th><font color=#ffcc33>Number of clusters: ',nclust,'</font></th></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
365 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
366
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
367 tempind = order(k1$cluster);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
368 tempoutfile = paste(outdir,"/PE_TE_kmeans_clusterpoints.txt",sep="",collapse="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
369 write.table(data.frame(PE_TE_data_kdata[tempind, ], Cluster=k1$cluster[tempind]), file=tempoutfile, row.names=F, quote=F, sep="\t", eol="\n")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
370
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
371
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
372 cat('<tr><td colspan="2" align=center><img src="PE_TE_kmeans.png" width=800 height=800></td></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
373 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
374 cat('<tr><td colspan="2" align=center><font size=5><a href="PE_TE_kmeans_clusterpoints.txt" target="_blank"><b>Download the cluster list</b></a></font></td></tr></table><br><hr/>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
375 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
376
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
377 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
378
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
379 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
380 # scatter plot
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
381 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
382 singlesample_scatter = function(PE_TE_data, outfile)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
383 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
384 min_lim = min(c(PE_TE_data$PE_abundance,PE_TE_data$TE_abundance));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
385 max_lim = max(c(PE_TE_data$PE_abundance,PE_TE_data$TE_abundance));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
386 png(outfile, width = 10, height = 10, units = 'in', res=300);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
387 # bitmap(outfile, "png16m");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
388 g = ggplot(PE_TE_data, aes(x=TE_abundance, y=PE_abundance))+geom_point() + geom_smooth() + xlab("Transcript abundance log fold-change") + ylab("Protein abundance log fold-change") + xlim(min_lim,max_lim) + ylim(min_lim,max_lim);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
389 suppressMessages(plot(g));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
390 # plot(g);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
391 dev.off();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
392 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
393
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
394 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
395 # Correlation table
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
396 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
397 singlesample_cor = function(PE_TE_data, htmloutfile, append=TRUE)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
398 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
399 cor_result_pearson = cor.test(PE_TE_data$TE_abundance, PE_TE_data$PE_abundance, method = "pearson");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
400 cor_result_spearman = cor.test(PE_TE_data$TE_abundance, PE_TE_data$PE_abundance, method = "spearman");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
401 cor_result_kendall = cor.test(PE_TE_data$TE_abundance, PE_TE_data$PE_abundance, method = "kendall");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
402
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
403 cat(
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
404 '<table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; "> <tr bgcolor="#7a0019"><th><font color=#ffcc33>Parameter</font></th><th><font color=#ffcc33>Method 1</font></th><th><font color=#ffcc33>Method 2</font></th><th><font color=#ffcc33>Method 3</font></th></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
405 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
406
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
407 cat(
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
408 "<tr><td>Correlation method</td><td>",cor_result_pearson$method,"</td><td>",cor_result_spearman$method,"</td><td>",cor_result_kendall$method,"</td></tr>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
409 "<tr><td>Correlation coefficient</td><td>",cor_result_pearson$estimate,"</td><td>",cor_result_spearman$estimate,"</td><td>",cor_result_kendall$estimate,"</td></tr>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
410 file = htmloutfile, append = TRUE)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
411 cat("</table>\n", file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
412
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
413 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
414
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
415 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
416 # Boxplot
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
417 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
418 multisample_boxplot = function(df, sampleinfo_df, outfile, fill_leg, user_xlab, user_ylab)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
419 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
420 tempdf = df[,-1, drop=FALSE];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
421 tempdf = t(tempdf) %>% as.data.frame();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
422 tempdf[is.na(tempdf)] = 0;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
423 tempdf$Sample = rownames(tempdf);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
424 tempdf1 = melt(tempdf, id.vars = "Sample");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
425 tempdf1$Group = sampleinfo_df[tempdf1$Sample,2];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
426 png(outplot, width = 6, height = 6, units = 'in', res=300);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
427 # bitmap(outplot, "png16m");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
428 if(fill_leg=="Yes")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
429 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
430 g = ggplot(tempdf1, aes(x=Sample, y=value, fill=Group)) + geom_boxplot() + labs(x=user_xlab) + labs(y=user_ylab)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
431 }else{
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
432 if(fill_leg=="No")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
433 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
434 tempdf1$Group = c("case", "control")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
435 g = ggplot(tempdf1, aes(x=Sample, y=value, fill=Group)) + geom_boxplot() + labs(x=user_xlab) + labs(y=user_ylab)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
436 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
437 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
438 plot(g);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
439 dev.off();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
440 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
441
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
442
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
443 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
444 # Mean or Median of Replicates
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
445 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
446
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
447 mergeReplicates = function(TE_df,PE_df, sampleinfo_df, method)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
448 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
449 grps = unique(sampleinfo_df[,2]);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
450
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
451 TE_df_merged <<- sapply(grps, function(x){
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
452 tempsample = sampleinfo_df[which(sampleinfo_df$Group==x),1]
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
453 if(length(tempsample)!=1){
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
454 apply(TE_df[,tempsample],1,method);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
455 }else{
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
456 return(TE_df[,tempsample]);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
457 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
458 });
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
459 TE_df_merged <<- data.frame(as.character(TE_df[,1]), TE_df_merged);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
460 colnames(TE_df_merged) = c(colnames(TE_df)[1], grps);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
461
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
462 PE_df_merged <<- sapply(grps, function(x){
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
463 tempsample = sampleinfo_df[which(sampleinfo_df$Group==x),1]
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
464 if(length(tempsample)!=1){
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
465 apply(PE_df[,tempsample],1,method);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
466 }else{
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
467 return(PE_df[,tempsample]);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
468 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
469 });
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
470
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
471 PE_df_merged <<- data.frame(as.character(PE_df[,1]), PE_df_merged);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
472 colnames(PE_df_merged) = c(colnames(PE_df)[1], grps);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
473
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
474 #sampleinfo_df_merged = data.frame(Sample = grps, Group = grps, stringsAsFactors = F);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
475 sampleinfo_df_merged = data.frame(Sample = grps, Group = "Group", stringsAsFactors = F);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
476
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
477 return(list(TE_df_merged = TE_df_merged, PE_df_merged = PE_df_merged, sampleinfo_df_merged = sampleinfo_df_merged));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
478 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
479
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
480 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
481 # (T-Test or Wilcoxon ranksum test) and Volcano Plot
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
482 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
483
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
484 perform_Test_Volcano = function(TE_df_data,PE_df_data,TE_df_logfold, PE_df_logfold,sampleinfo_df, method, correction_method,volc_with)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
485 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
486
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
487 PE_colnames = colnames(PE_df_data);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
488 control_sample = sampleinfo_df[which(sampleinfo_df$Group=="control"),1];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
489 control_ind <<- sapply(control_sample, function(x){temp_ind = which(PE_colnames==x); as.numeric(temp_ind)});
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
490 condition_sample = sampleinfo_df[which(sampleinfo_df$Group=="case"),1];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
491 condition_ind <<- sapply(condition_sample, function(x){temp_ind = which(PE_colnames==x); as.numeric(temp_ind)});
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
492
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
493 if(method=="mean"){
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
494 #PE_pval = apply(PE_df_data[2:length(colnames(PE_df_data))],1,function(x) t.test(x[condition_ind-1], x[control_ind-1])$p.value);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
495 PE_pval = apply(PE_df_data[2:length(colnames(PE_df_data))],1,function(x) {obj<-try(t.test(x[condition_ind-1], x[control_ind-1]),silent=TRUE); if(is(obj, "try-error")){return(NA)}else{return(obj$p.value)}})
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
496 }else{
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
497 if(method=="median"){
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
498 PE_pval = apply(PE_df_data[2:length(colnames(PE_df_data))],1,function(x) {obj<-try(wilcox.test(x[condition_ind-1], x[control_ind-1]),silent=TRUE); if(is(obj, "try-error")){return(NA)}else{return(obj$p.value)}})
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
499 # PE_pval = apply(PE_df_data[2:length(colnames(PE_df_data))],1,function(x) wilcox.test(x[condition_ind-1], x[control_ind-1])$p.value);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
500 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
501 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
502 PE_adj_pval = p.adjust(PE_pval, method = correction_method, n = length(PE_pval))
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
503
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
504
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
505 TE_colnames = colnames(TE_df_data);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
506 control_sample = sampleinfo_df[which(sampleinfo_df$Group=="control"),1];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
507 control_ind <<- sapply(control_sample, function(x){temp_ind = which(TE_colnames==x); as.numeric(temp_ind)});
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
508 condition_sample = sampleinfo_df[which(sampleinfo_df$Group=="case"),1];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
509 condition_ind <<- sapply(condition_sample, function(x){temp_ind = which(TE_colnames==x); as.numeric(temp_ind)});
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
510
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
511 if(method=="mean"){
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
512 # TE_pval = apply(TE_df_data[2:length(colnames(TE_df_data))],1,function(x) t.test(x[condition_ind-1], x[control_ind-1])$p.value);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
513 TE_pval = apply(TE_df_data[2:length(colnames(TE_df_data))],1,function(x) {obj<-try(t.test(x[condition_ind-1], x[control_ind-1]),silent=TRUE); if(is(obj, "try-error")){return(NA)}else{return(obj$p.value)}})
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
514 }else{
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
515 if(method=="median"){
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
516 TE_pval = apply(TE_df_data[2:length(colnames(TE_df_data))],1,function(x) {obj<-try(wilcox.test(x[condition_ind-1], x[control_ind-1]),silent=TRUE); if(is(obj, "try-error")){return(NA)}else{return(obj$p.value)}})
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
517 # TE_pval = apply(TE_df_data[2:length(colnames(TE_df_data))],1,function(x) wilcox.test(x[condition_ind-1], x[control_ind-1])$p.value);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
518 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
519 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
520 TE_adj_pval = p.adjust(TE_pval, method = correction_method, n = length(TE_pval))
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
521
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
522
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
523 PE_TE_logfold_pval = data.frame(TE_df_logfold$Gene, TE_df_logfold$LogFold, TE_pval, TE_adj_pval, PE_df_logfold$LogFold, PE_pval, PE_adj_pval);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
524 colnames(PE_TE_logfold_pval) = c("Gene", "Transcript log fold-change", "p-value (transcript)", "adj p-value (transcript)", "Protein log fold-change", "p-value (protein)", "adj p-value (protein)");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
525 outdatafile = paste(outdir,"/PE_TE_logfold_pval.txt", sep="", collapse="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
526 write.table(PE_TE_logfold_pval, file=outdatafile, row.names=F, sep="\t", quote=F);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
527 cat("<br><br><font size=5><b><a href='PE_TE_logfold_pval.txt' target='_blank'>Download the complete fold change data here</a></b></font><br>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
528 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
529
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
530 if(length(condition_ind)!=1)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
531 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
532 # Volcano Plot
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
533
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
534 if(volc_with=="adj_pval")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
535 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
536 PE_pval = PE_adj_pval
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
537 TE_pval = TE_adj_pval
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
538 volc_ylab = "-log10 Adjusted p-value";
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
539 }else{
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
540 if(volc_with=="pval")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
541 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
542 volc_ylab = "-log10 p-value";
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
543 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
544 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
545 outplot = paste(outdir,"/PE_volcano.png",sep="",collapse="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
546 png(outplot, width = 10, height = 10, units = 'in', res=300);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
547 # bitmap(outplot, "png16m");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
548 par(mfrow=c(1,1));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
549
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
550 plot(PE_df_logfold$LogFold, -log10(PE_pval),
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
551 xlab="log2 fold change", ylab=volc_ylab,
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
552 type="n")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
553 sel <- which((PE_df_logfold$LogFold<=log(2,base=2))&(PE_df_logfold$LogFold>=log(0.5, base=2))) # or whatever you want to use
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
554 points(PE_df_logfold[sel,"LogFold"], -log10(PE_pval[sel]),col="black")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
555 #sel <- which((PE_df_logfold$LogFold>log(2,base=2))&(PE_df_logfold$LogFold<log(0.5,base=2))) # or whatever you want to use
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
556 sel <- which((PE_df_logfold$LogFold>log(2,base=2))|(PE_df_logfold$LogFold<log(0.5, base=2)))
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
557 sel1 <- which(PE_pval<=0.05)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
558 sel=intersect(sel,sel1)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
559 points(PE_df_logfold[sel,"LogFold"], -log10(PE_pval[sel]),col="red")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
560 sel <- which((PE_df_logfold$LogFold>log(2,base=2))|(PE_df_logfold$LogFold<log(0.5, base=2)))
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
561 sel1 <- which(PE_pval>0.05)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
562 sel=intersect(sel,sel1)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
563 points(PE_df_logfold[sel,"LogFold"], -log10(PE_pval[sel]),col="blue")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
564 abline(h = -log(0.05,base=10), col="red", lty=2)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
565 abline(v = log(2,base=2), col="red", lty=2)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
566 abline(v = log(0.5,base=2), col="red", lty=2)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
567 dev.off();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
568
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
569
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
570
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
571 outplot = paste(outdir,"/TE_volcano.png",sep="",collapse="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
572 png(outplot, width = 10, height = 10, units = 'in', res=300);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
573 # bitmap(outplot, "png16m");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
574 par(mfrow=c(1,1));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
575
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
576 plot(TE_df_logfold$LogFold, -log10(TE_pval),
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
577 xlab="log2 fold change", ylab=volc_ylab,
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
578 type="n")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
579 sel <- which((TE_df_logfold$LogFold<=log(2,base=2))&(TE_df_logfold$LogFold>=log(0.5, base=2))) # or whatever you want to use
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
580 points(TE_df_logfold[sel,"LogFold"], -log10(TE_pval[sel]),col="black")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
581 #sel <- which((TE_df_logfold$LogFold>log(2,base=2))&(TE_df_logfold$LogFold<log(0.5,base=2))) # or whatever you want to use
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
582 sel <- which((TE_df_logfold$LogFold>log(2,base=2))|(TE_df_logfold$LogFold<log(0.5, base=2)))
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
583 sel1 <- which(TE_pval<=0.05)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
584 sel=intersect(sel,sel1)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
585 points(TE_df_logfold[sel,"LogFold"], -log10(TE_pval[sel]),col="red")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
586 sel <- which((TE_df_logfold$LogFold>log(2,base=2))|(TE_df_logfold$LogFold<log(0.5, base=2)))
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
587 sel1 <- which(TE_pval>0.05)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
588 sel=intersect(sel,sel1)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
589 points(TE_df_logfold[sel,"LogFold"], -log10(TE_pval[sel]),col="blue")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
590 abline(h = -log(0.05,base=10), col="red", lty=2)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
591 abline(v = log(2,base=2), col="red", lty=2)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
592 abline(v = log(0.5,base=2), col="red", lty=2)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
593 dev.off();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
594
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
595
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
596
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
597 cat('<br><table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; "> <tr bgcolor="#7a0019"><th><font color=#ffcc33>Transcript Fold-Change</font></th><th><font color=#ffcc33>Protein Fold-Change</font></th></tr>\n', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
598 cat("<tr><td align=center>", '<img src="TE_volcano.png" width=600 height=600></td>\n', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
599 cat("<td align=center>",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
600 '<img src="PE_volcano.png" width=600 height=600></td></tr></table><br>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
601 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
602 }else{
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
603 cat('<br><br><b><font color=red>!!! No replicates found. Cannot perform test to check significance of differential expression. Thus, no Volcano plot generated !!!</font></b><br><br>',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
604 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
605 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
606
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
607 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
608
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
609
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
610 #***************************************************************************************************************************************
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
611 # Functions: End
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
612 #***************************************************************************************************************************************
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
613
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
614
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
615
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
616
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
617 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
618 # Arguments
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
619 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
620 noargs = 12;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
621 args = commandArgs(trailingOnly = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
622 if(length(args) != noargs)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
623 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
624 stop(paste("Please check usage. Number of arguments is not equal to ",noargs,sep="",collapse=""));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
625 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
626
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
627 mode = args[1]; # "multiple" or "logfold"
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
628 method = args[2]; # "mean" or "median"
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
629 sampleinfo_file = args[3];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
630 proteome_file = args[4];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
631 transcriptome_file = args[5];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
632 correction_method = args[6];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
633 cookdist_upper_cutoff = args[7];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
634 numCluster = args[8];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
635 hm_nclust = args[9];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
636 volc_with = args[10];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
637
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
638 htmloutfile = args[11]; # html output file
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
639 outdir = args[12]; # html supporting files
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
640
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
641
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
642 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
643 # Check for file existance
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
644 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
645 if(! file.exists(proteome_file))
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
646 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
647 stop(paste("Proteome Data file does not exists. Path given: ",proteome_file,sep="",collapse=""));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
648 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
649 if(! file.exists(transcriptome_file))
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
650 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
651 stop(paste("Transcriptome Data file does not exists. Path given: ",transcriptome_file,sep="",collapse=""));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
652 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
653
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
654 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
655 # Load library
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
656 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
657 options(warn=-1);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
658
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
659 suppressPackageStartupMessages(library(dplyr));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
660 suppressPackageStartupMessages(library(data.table));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
661 suppressPackageStartupMessages(library(gplots));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
662 suppressPackageStartupMessages(library(ggplot2));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
663 suppressPackageStartupMessages(library(ggfortify));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
664
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
665 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
666 # Select mode and parse experiment design file
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
667 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
668 if(mode=="multiple")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
669 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
670 expDesign = fread(sampleinfo_file, header = FALSE, stringsAsFactors = FALSE, sep="\t") %>% data.frame();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
671 expDesign_cc = expDesign[1:2,];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
672
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
673 sampleinfo_df = expDesign[3:nrow(expDesign),];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
674 rownames(sampleinfo_df)=1:nrow(sampleinfo_df);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
675 colnames(sampleinfo_df) = c("Sample","Group");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
676
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
677 condition_cols = sampleinfo_df[which(sampleinfo_df[,2]==expDesign_cc[which(expDesign_cc[,1]=="case"),2]),1];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
678 condition_g_name = "case";
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
679 control_cols = sampleinfo_df[which(sampleinfo_df[,2]==expDesign_cc[which(expDesign_cc[,1]=="control"),2]),1];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
680 control_g_name = "control";
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
681 sampleinfo_df[which(sampleinfo_df[,2]==expDesign_cc[which(expDesign_cc[,1]=="case"),2]),2] = "case";
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
682 sampleinfo_df[which(sampleinfo_df[,2]==expDesign_cc[which(expDesign_cc[,1]=="control"),2]),2] = "control";
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
683 sampleinfo_df_orig = sampleinfo_df;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
684 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
685
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
686 if(mode=="logfold")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
687 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
688 sampleinfo_df = data.frame("Sample"= c("LogFold"), "Group"=c("Fold_Change"))
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
689 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
690
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
691 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
692 # Parse Transcriptome data
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
693 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
694 TE_df_orig = fread(transcriptome_file, sep="\t", stringsAsFactor=F, header=T) %>% data.frame();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
695 if(mode=="multiple")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
696 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
697 TE_df = TE_df_orig[,c(colnames(TE_df_orig)[1],condition_cols,control_cols)];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
698 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
699 if(mode=="logfold")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
700 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
701 TE_df = TE_df_orig;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
702 colnames(TE_df) = c("Genes", "LogFold");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
703 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
704 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
705 # Parse Proteome data
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
706 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
707 PE_df_orig = fread(proteome_file, sep="\t", stringsAsFactor=F, header=T) %>% data.frame();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
708 if(mode=="multiple")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
709 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
710 PE_df = PE_df_orig[,c(colnames(PE_df_orig)[1],condition_cols,control_cols)];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
711 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
712 if(mode=="logfold")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
713 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
714 PE_df = PE_df_orig;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
715 colnames(PE_df) = c("Genes", "LogFold");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
716 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
717
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
718 #=============================================================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
719 # Create directory structures and then set the working directory to output directory
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
720 #=============================================================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
721 if(! file.exists(outdir))
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
722 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
723 dir.create(outdir);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
724 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
725 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
726 # Write initial data summary in html outfile
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
727 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
728 cat("<html><head></head><body>\n", file = htmloutfile);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
729
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
730 cat("<h1><u>QuanTP: Association between abundance ratios of transcript and protein</u></h1><hr/>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
731 "<font><h3>Input data summary</h3></font>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
732 "<ul>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
733 "<li>Abbreviations used: PE (Proteome data) and TE (Transcriptome data)","</li><br>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
734 "<li>Input Proteome data dimension (Row Column): ", dim(PE_df)[1]," x ", dim(PE_df)[2],"</li>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
735 "<li>Input Transcriptome data dimension (Row Column): ", dim(TE_df)[1]," x ", dim(TE_df)[2],"</li></ul><hr/>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
736 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
737
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
738 cat("<h3 id=table_of_content>Table of Contents:</h3>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
739 "<ul>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
740 "<li><a href=#sample_dist>Sample distribution</a></li>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
741 "<li><a href=#corr_data>Correlation</a></li>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
742 "<li><a href=#regression_data>Regression analysis</a></li>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
743 "<li><a href=#inf_obs>Influential observations</a></li>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
744 "<li><a href=#cluster_data>Cluster analysis</a></li></ul><hr/>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
745 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
746 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
747 # Find common samples
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
748 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
749 common_samples = intersect(sampleinfo_df[,1], colnames(TE_df)[-1]) %>% intersect(., colnames(PE_df)[-1]);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
750
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
751 if(length(common_samples)==0)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
752 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
753 stop("No common samples found ");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
754 cat("<b>Please check your experiment design file. Sample names (column names) in the Transcriptome and the Proteome data do not match. </b>\n",file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
755 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
756
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
757 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
758 # Create subsets based on common samples
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
759 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
760 TE_df = select(TE_df, 1, common_samples);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
761 PE_df = select(PE_df, 1, common_samples);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
762 sampleinfo_df = filter(sampleinfo_df, Sample %in% common_samples);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
763 rownames(sampleinfo_df) = sampleinfo_df[,1];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
764
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
765 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
766 # Check for number of rows similarity
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
767 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
768 if(nrow(TE_df) != nrow(PE_df))
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
769 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
770 stop("Number of rows in Transcriptome and Proteome data are not same i.e. they are not paired");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
771 cat("<b>The correlation analysis expects paired TE and PE data i.e. (i)th gene/transcript of TE file should correspond to (i)th protein of PE file. In the current input provided there is mismatch in terms of number of rows of TE and PE file. Please make sure you provide paired data.</b>\n",file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
772 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
773
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
774 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
775 # Number of groups
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
776 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
777 ngrps = unique(sampleinfo_df[,2]) %>% length();
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
778 grps = unique(sampleinfo_df[,2]);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
779 names(grps) = grps;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
780
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
781 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
782 # Change column1 name
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
783 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
784 colnames(TE_df)[1] = "Gene";
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
785 colnames(PE_df)[1] = "Protein";
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
786
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
787 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
788 # Treat missing values
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
789 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
790 TE_nacount = sum(is.na(TE_df));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
791 PE_nacount = sum(is.na(PE_df));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
792
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
793 TE_df[is.na(TE_df)] = 0;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
794 PE_df[is.na(PE_df)] = 0;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
795
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
796
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
797 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
798 # Decide based on analysis mode
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
799 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
800 if(mode=="logfold")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
801 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
802 cat('<h2 id="sample_dist"><font color=#ff0000>SAMPLE DISTRIBUTION</font></h2>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
803 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
804
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
805 # TE Boxplot
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
806 outplot = paste(outdir,"/Box_TE.png",sep="",collape="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
807 cat('<table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; ">\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
808 '<tr bgcolor="#7a0019"><th><font color=#ffcc33>Boxplot: Transcriptome data</font></th><th><font color=#ffcc33>Boxplot: Proteome data</font></th></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
809 "<tr><td align=center>", '<img src="Box_TE.png" width=500 height=500></td>\n', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
810 multisample_boxplot(TE_df, sampleinfo_df, outplot, "Yes", "Samples", "Transcript Abundance data");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
811
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
812 # PE Boxplot
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
813 outplot = paste(outdir,"/Box_PE.png",sep="",collape="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
814 cat("<td align=center>", '<img src="Box_PE.png" width=500 height=500></td></tr></table>\n', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
815 multisample_boxplot(PE_df, sampleinfo_df, outplot, "Yes", "Samples", "Protein Abundance data");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
816
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
817 cat('<hr/><h2 id="corr_data"><font color=#ff0000>CORRELATION</font></h2>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
818 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
819
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
820 # TE PE scatter
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
821 outplot = paste(outdir,"/TE_PE_scatter.png",sep="",collape="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
822 cat('<table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; "> <tr bgcolor="#7a0019"><th><font color=#ffcc33>Scatter plot between Proteome and Transcriptome Abundance</font></th></tr>\n', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
823 cat("<tr><td align=center>", '<img src="TE_PE_scatter.png" width=800 height=800></td></tr>\n', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
824 PE_TE_data = data.frame(PE_df, TE_df);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
825 colnames(PE_TE_data) = c("PE_ID","PE_abundance","TE_ID","TE_abundance");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
826 singlesample_scatter(PE_TE_data, outplot);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
827
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
828 # TE PE Cor
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
829 cat("<tr><td align=center>", file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
830 singlesample_cor(PE_TE_data, htmloutfile, append=TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
831 cat('<font color="red">*Note that <u>correlation</u> is <u>sensitive to outliers</u> in the data. So it is important to analyze outliers/influential observations in the data.<br> Below we use <u>Cook\'s distance based approach</u> to identify such influential observations.</font>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
832 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
833 cat('</td></table>',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
834 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
835
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
836 cat('<hr/><h2 id="regression_data"><font color=#ff0000>REGRESSION ANALYSIS</font></h2>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
837 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
838
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
839 # TE PE Regression
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
840 singlesample_regression(PE_TE_data,htmloutfile, append=TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
841
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
842 cat('<hr/><h2 id="cluster_data"><font color=#ff0000>CLUSTER ANALYSIS</font></h2>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
843 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
844
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
845 # TE PE Heatmap
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
846 singlesample_heatmap(PE_TE_data, htmloutfile, hm_nclust);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
847
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
848
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
849 # TE PE Clustering (kmeans)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
850 singlesample_kmeans(PE_TE_data, htmloutfile, nclust=as.numeric(numCluster))
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
851
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
852 }else{
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
853 if(mode=="multiple")
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
854 {
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
855 cat('<h2 id="sample_dist"><font color=#ff0000>SAMPLE DISTRIBUTION</font></h2>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
856 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
857
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
858 # TE Boxplot
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
859 outplot = paste(outdir,"/Box_TE_all_rep.png",sep="",collape="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
860 cat('<table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; ">\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
861 '<tr bgcolor="#7a0019"><th><font color=#ffcc33>Boxplot: Transcriptome data</font></th><th><font color=#ffcc33>Boxplot: Proteome data</font></th></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
862 "<tr><td align=center>", '<img src="Box_TE_all_rep.png" width=500 height=500></td>\n', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
863 temp_df_te_data = data.frame(TE_df[,1], log(TE_df[,2:length(TE_df)]));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
864 colnames(temp_df_te_data) = colnames(TE_df);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
865 multisample_boxplot(temp_df_te_data, sampleinfo_df, outplot, "Yes", "Samples", "Transcript Abundance (log)");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
866
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
867 # PE Boxplot
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
868 outplot = paste(outdir,"/Box_PE_all_rep.png",sep="",collape="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
869 cat("<td align=center>", '<img src="Box_PE_all_rep.png" width=500 height=500></td></tr></table>\n', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
870 temp_df_pe_data = data.frame(PE_df[,1], log(PE_df[,2:length(PE_df)]));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
871 colnames(temp_df_pe_data) = colnames(PE_df);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
872 multisample_boxplot(temp_df_pe_data, sampleinfo_df, outplot, "Yes", "Samples", "Protein Abundance (log)");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
873
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
874 # Calc TE PCA
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
875 outplot = paste(outdir,"/PCA_TE_all_rep.png",sep="",collape="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
876 multisample_PCA(TE_df, sampleinfo_df, outplot);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
877
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
878 # Calc PE PCA
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
879 outplot = paste(outdir,"/PCA_PE_all_rep.png",sep="",collape="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
880 multisample_PCA(PE_df, sampleinfo_df, outplot);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
881
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
882
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
883 # Replicate mode
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
884 templist = mergeReplicates(TE_df,PE_df, sampleinfo_df, method);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
885 TE_df = templist$TE_df_merged;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
886 PE_df = templist$PE_df_merged;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
887 sampleinfo_df = templist$sampleinfo_df_merged;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
888 rownames(sampleinfo_df) = sampleinfo_df[,1];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
889
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
890 # TE Boxplot
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
891 outplot = paste(outdir,"/Box_TE_rep.png",sep="",collape="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
892 cat('<br><font color="#ff0000"><h3>Sample wise distribution (Box plot) after using ',method,' on replicates </h3></font><table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; "> <tr bgcolor="#7a0019"><th><font color=#ffcc33>Boxplot: Transcriptome data</font></th><th><font color=#ffcc33>Boxplot: Proteome data</font></th></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
893 "<tr><td align=center>", '<img src="Box_TE_rep.png" width=500 height=500></td>\n', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
894 temp_df_te_data = data.frame(TE_df[,1], log(TE_df[,2:length(TE_df)]));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
895 colnames(temp_df_te_data) = colnames(TE_df);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
896 multisample_boxplot(temp_df_te_data, sampleinfo_df, outplot, "No", "Sample Groups", "Mean Transcript Abundance (log)");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
897
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
898 # PE Boxplot
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
899 outplot = paste(outdir,"/Box_PE_rep.png",sep="",collape="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
900 cat("<td align=center>", '<img src="Box_PE_rep.png" width=500 height=500></td></tr></table>\n', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
901 temp_df_pe_data = data.frame(PE_df[,1], log(PE_df[,2:length(PE_df)]));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
902 colnames(temp_df_pe_data) = colnames(PE_df);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
903 multisample_boxplot(temp_df_pe_data, sampleinfo_df, outplot, "No", "Sample Groups", "Mean Protein Abundance (log)");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
904
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
905 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
906 # Calculating log fold change and running the "single" code part
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
907 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
908
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
909 TE_df = data.frame("Genes"=TE_df[,1], "LogFold"=apply(TE_df[,c(which(colnames(TE_df)==condition_g_name),which(colnames(TE_df)==control_g_name))],1,function(x) log(x[1]/x[2],base=2)));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
910 PE_df = data.frame("Genes"=PE_df[,1], "LogFold"=apply(PE_df[,c(which(colnames(PE_df)==condition_g_name),which(colnames(PE_df)==control_g_name))],1,function(x) log(x[1]/x[2],base=2)));
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
911
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
912 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
913 # Treat missing values
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
914 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
915
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
916 TE_df[is.infinite(TE_df[,2]),2] = NA;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
917 PE_df[is.infinite(PE_df[,2]),2] = NA;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
918 TE_df[is.na(TE_df)] = 0;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
919 PE_df[is.na(PE_df)] = 0;
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
920
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
921 sampleinfo_df = data.frame("Sample"= c("LogFold"), "Group"=c("Fold_Change"))
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
922 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
923 # Find common samples
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
924 #===============================================================================
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
925
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
926 common_samples = intersect(sampleinfo_df[,1], colnames(TE_df)[-1]) %>% intersect(., colnames(PE_df)[-1]);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
927 TE_df = select(TE_df, 1, common_samples);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
928 PE_df = select(PE_df, 1, common_samples);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
929 sampleinfo_df = filter(sampleinfo_df, Sample %in% common_samples);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
930 rownames(sampleinfo_df) = sampleinfo_df[,1];
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
931
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
932 # TE Boxplot
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
933 outplot = paste(outdir,"/Box_TE.png",sep="",collape="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
934 cat('<br><font color="#ff0000"><h3>Distribution (Box plot) of log fold change </h3></font>', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
935 cat('<table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; "> <tr bgcolor="#7a0019"><th><font color=#ffcc33>Boxplot: Transcriptome data</font></th><th><font color=#ffcc33>Boxplot: Proteome data</font></th></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
936 "<tr><td align=center>", '<img src="Box_TE.png" width=500 height=500></td>\n', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
937 multisample_boxplot(TE_df, sampleinfo_df, outplot, "Yes", "Sample (log2(case/control))", "Transcript Abundance fold-change (log2)");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
938
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
939 # PE Boxplot
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
940 outplot = paste(outdir,"/Box_PE.png",sep="",collape="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
941 cat("<td align=center>", '<img src="Box_PE.png" width=500 height=500></td></tr></table>\n', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
942 multisample_boxplot(PE_df, sampleinfo_df, outplot, "Yes", "Sample (log2(case/control))", "Protein Abundance fold-change(log2)");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
943
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
944
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
945 # Log Fold Data
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
946 perform_Test_Volcano(TE_df_orig,PE_df_orig,TE_df, PE_df,sampleinfo_df_orig,method,correction_method,volc_with)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
947
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
948
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
949
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
950 # Print PCA
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
951
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
952 cat('<br><br><table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; "> <tr bgcolor="#7a0019"><th><font color=#ffcc33>PCA plot: Transcriptome data</font></th><th><font color=#ffcc33>PCA plot: Proteome data</font></th></tr>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
953 "<tr><td align=center>", '<img src="PCA_TE_all_rep.png" width=500 height=500></td>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
954 "<td align=center>", '<img src="PCA_PE_all_rep.png" width=500 height=500></td></tr></table>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
955 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
956
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
957
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
958
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
959 cat('<hr/><h2 id="corr_data"><font color=#ff0000>CORRELATION</font></h2>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
960 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
961
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
962 # TE PE scatter
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
963 outplot = paste(outdir,"/TE_PE_scatter.png",sep="",collape="");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
964 cat('<br><table border=1 cellspacing=0 cellpadding=5 style="table-layout:auto; "> <tr bgcolor="#7a0019"><th><font color=#ffcc33>Scatter plot between Proteome and Transcriptome Abundance</font></th></tr>\n', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
965 cat("<tr><td align=center>", '<img src="TE_PE_scatter.png" width=800 height=800></td>\n', file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
966 PE_TE_data = data.frame(PE_df, TE_df);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
967 colnames(PE_TE_data) = c("PE_ID","PE_abundance","TE_ID","TE_abundance");
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
968 singlesample_scatter(PE_TE_data, outplot);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
969
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
970 # TE PE Cor
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
971 cat("<tr><td align=center>\n", file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
972 singlesample_cor(PE_TE_data, htmloutfile, append=TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
973 cat('<font color="red">*Note that <u>correlation</u> is <u>sensitive to outliers</u> in the data. So it is important to analyze outliers/influential observations in the data.<br> Below we use <u>Cook\'s distance based approach</u> to identify such influential observations.</font>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
974 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
975 cat('</td></table>',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
976 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
977
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
978 cat('<hr/><h2 id="regression_data"><font color=#ff0000>REGRESSION ANALYSIS</font></h2>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
979 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
980
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
981 # TE PE Regression
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
982 singlesample_regression(PE_TE_data,htmloutfile, append=TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
983
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
984 cat('<hr/><h2 id="cluster_data"><font color=#ff0000>CLUSTER ANALYSIS</font></h2>\n',
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
985 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
986
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
987 #TE PE Heatmap
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
988 singlesample_heatmap(PE_TE_data, htmloutfile, hm_nclust);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
989
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
990 #TE PE Clustering (kmeans)
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
991 singlesample_kmeans(PE_TE_data, htmloutfile, nclust=as.numeric(numCluster))
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
992
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
993 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
994 }
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
995 cat("<h3>Go To:</h3>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
996 "<ul>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
997 "<li><a href=#sample_dist>Sample distribution</a></li>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
998 "<li><a href=#corr_data>Correlation</a></li>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
999 "<li><a href=#regression_data>Regression analysis</a></li>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
1000 "<li><a href=#inf_obs>Influential observations</a></li>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
1001 "<li><a href=#cluster_data>Cluster analysis</a></li></ul>\n",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
1002 "<br><a href=#>TOP</a>",
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
1003 file = htmloutfile, append = TRUE);
f1db758949f4 planemo upload commit a0e968c7bd2b6f7b963baeecb08f3a39e50f52d6
galaxyp
parents:
diff changeset
1004 cat("</body></html>\n", file = htmloutfile, append = TRUE);