annotate rgedgeRpaired_nocamera.xml @ 115:badcd3b0e708 draft

Uploaded
author fubar
date Thu, 23 Oct 2014 01:31:34 -0400
parents 9f2e0ec3e826
children b0d21688db8e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
1 <tool id="rgDifferentialCount" name="Differential_Count" version="0.26">
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
2 <description>models using BioConductor packages</description>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
3 <requirements>
115
badcd3b0e708 Uploaded
fubar
parents: 111
diff changeset
4 <requirement type="package" version="2.9.1">libxml2</requirement>
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
5 <requirement type="package" version="3.1.1">R_3_1_1</requirement>
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
6 <requirement type="package" version="1.3.18">graphicsmagick</requirement>
115
badcd3b0e708 Uploaded
fubar
parents: 111
diff changeset
7 <requirement type="package" version="9.10">ghostscript</requirement> <package name="libxml2" version="2.9.1">
badcd3b0e708 Uploaded
fubar
parents: 111
diff changeset
8 <requirement type="package" version="2.14">biocbasics</requirement>
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
9 </requirements>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
10
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
11 <command interpreter="python">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
12 rgToolFactory.py --script_path "$runme" --interpreter "Rscript" --tool_name "DifferentialCounts"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
13 --output_dir "$html_file.files_path" --output_html "$html_file" --make_HTML "yes"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
14 </command>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
15 <inputs>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
16 <param name="input1" type="data" format="tabular" label="Select an input matrix - rows are contigs, columns are counts for each sample"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
17 help="Use the HTSeq based count matrix preparation tool to create these matrices from BAM/SAM files and a GTF file of genomic features"/>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
18 <param name="title" type="text" value="Differential Counts" size="80" label="Title for job outputs"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
19 help="Supply a meaningful name here to remind you what the outputs contain">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
20 <sanitizer invalid_char="">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
21 <valid initial="string.letters,string.digits"><add value="_" /> </valid>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
22 </sanitizer>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
23 </param>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
24 <param name="treatment_name" type="text" value="Treatment" size="50" label="Treatment Name"/>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
25 <param name="Treat_cols" label="Select columns containing treatment." type="data_column" data_ref="input1" numerical="True"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
26 multiple="true" use_header_names="true" size="120" display="checkboxes">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
27 <validator type="no_options" message="Please select at least one column."/>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
28 </param>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
29 <param name="control_name" type="text" value="Control" size="50" label="Control Name"/>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
30 <param name="Control_cols" label="Select columns containing control." type="data_column" data_ref="input1" numerical="True"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
31 multiple="true" use_header_names="true" size="120" display="checkboxes" optional="true">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
32 </param>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
33 <param name="subjectids" type="text" optional="true" size="120" value = ""
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
34 label="IF SUBJECTS NOT ALL INDEPENDENT! Enter comma separated strings to indicate sample labels for (eg) pairing - must be one for every column in input"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
35 help="Leave blank if no pairing, but eg if data from sample id A99 is in columns 2,4 and id C21 is in 3,5 then enter 'A99,C21,A99,C21'">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
36 <sanitizer>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
37 <valid initial="string.letters,string.digits"><add value="," /> </valid>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
38 </sanitizer>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
39 </param>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
40 <param name="fQ" type="float" value="0.3" size="5" label="Non-differential contig count quantile threshold - zero to analyze all non-zero read count contigs"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
41 help="May be a good or a bad idea depending on the biology and the question. EG 0.3 = sparsest 30% of contigs with at least one read are removed before analysis"/>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
42 <param name="useNDF" type="boolean" truevalue="T" falsevalue="F" checked="false" size="1"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
43 label="Non differential filter - remove contigs below a threshold (1 per million) for half or more samples"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
44 help="May be a good or a bad idea depending on the biology and the question. This was the old default. Quantile based is available as an alternative"/>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
45
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
46 <conditional name="edgeR">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
47 <param name="doedgeR" type="select"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
48 label="Run this model using edgeR"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
49 help="edgeR uses a negative binomial model and seems to be powerful, even with few replicates">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
50 <option value="F">Do not run edgeR</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
51 <option value="T" selected="true">Run edgeR</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
52 </param>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
53 <when value="T">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
54 <param name="edgeR_priordf" type="integer" value="10" size="3"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
55 label="prior.df for tagwise dispersion - larger value = more squeezing of tag dispersions to common dispersion. Replaces prior.n and prior.df = prior.n * residual.df"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
56 help="10 = edgeR default. Use a larger value to 'smooth' small samples. See edgeR docs and note below"/>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
57 <param name="edgeR_robust_method" type="select" value="20" size="3"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
58 label="Use robust dispersion method"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
59 help="Use ordinary, anscombe or deviance robust deviance estimates">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
60 <option value="ordinary" selected="true">Use ordinary deviance estimates</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
61 <option value="deviance">Use robust deviance estimates</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
62 <option value="anscombe">use Anscombe robust deviance estimates</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
63 </param>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
64 </when>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
65 <when value="F"></when>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
66 </conditional>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
67 <conditional name="DESeq2">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
68 <param name="doDESeq2" type="select"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
69 label="Run the same model with DESeq2 and compare findings"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
70 help="DESeq2 is an update to the DESeq package. It uses different assumptions and methods to edgeR">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
71 <option value="F" selected="true">Do not run DESeq2</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
72 <option value="T">Run DESeq2</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
73 </param>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
74 <when value="T">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
75 <param name="DESeq_fitType" type="select">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
76 <option value="parametric" selected="true">Parametric (default) fit for dispersions</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
77 <option value="local">Local fit - this will automagically be used if parametric fit fails</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
78 <option value="mean">Mean dispersion fit- use this if you really understand what you're doing - read the fine manual linked below in the documentation</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
79 </param>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
80 </when>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
81 <when value="F"> </when>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
82 </conditional>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
83 <param name="doVoom" type="select"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
84 label="Run the same model with Voom/limma and compare findings"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
85 help="Voom uses counts per million and a precise transformation of variance so count data can be analysed using limma">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
86 <option value="F" selected="true">Do not run VOOM</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
87 <option value="T">Run VOOM</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
88 </param>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
89 <!--
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
90 <conditional name="camera">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
91 <param name="doCamera" type="select" label="Run the edgeR implementation of Camera GSEA for up/down gene sets"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
92 help="If yes, you can choose a set of genesets to test and/or supply a gmt format geneset collection from your history">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
93 <option value="F" selected="true">Do not run GSEA tests with the Camera algorithm</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
94 <option value="T">Run GSEA tests with the Camera algorithm</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
95 </param>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
96 <when value="T">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
97 <conditional name="gmtSource">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
98 <param name="refgmtSource" type="select"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
99 label="Use a gene set (.gmt) from your history and/or use a built-in (MSigDB etc) gene set">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
100 <option value="indexed" selected="true">Use a built-in gene set</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
101 <option value="history">Use a gene set from my history</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
102 <option value="both">Add a gene set from my history to a built in gene set</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
103 </param>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
104 <when value="indexed">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
105 <param name="builtinGMT" type="select" label="Select a gene set matrix (.gmt) file to use for the analysis">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
106 <options from_data_table="gseaGMT_3.1">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
107 <filter type="sort_by" column="2" />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
108 <validator type="no_options" message="No GMT v3.1 files are available - please install them"/>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
109 </options>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
110 </param>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
111 </when>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
112 <when value="history">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
113 <param name="ownGMT" type="data" format="gmt" label="Select a Gene Set from your history" />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
114 </when>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
115 <when value="both">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
116 <param name="ownGMT" type="data" format="gseagmt" label="Select a Gene Set from your history" />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
117 <param name="builtinGMT" type="select" label="Select a gene set matrix (.gmt) file to use for the analysis">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
118 <options from_data_table="gseaGMT_4">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
119 <filter type="sort_by" column="2" />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
120 <validator type="no_options" message="No GMT v4 files are available - please fix tool_data_table and loc files"/>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
121 </options>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
122 </param>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
123 </when>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
124 </conditional>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
125 </when>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
126 <when value="F">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
127 </when>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
128 </conditional>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
129 -->
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
130 <param name="fdrthresh" type="float" value="0.05" size="5" label="P value threshold for FDR filtering for amily wise error rate control"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
131 help="Conventional default value of 0.05 recommended"/>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
132 <param name="fdrtype" type="select" label="FDR (Type II error) control method"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
133 help="Use fdr or bh typically to control for the number of tests in a reliable way">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
134 <option value="fdr" selected="true">fdr</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
135 <option value="BH">Benjamini Hochberg</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
136 <option value="BY">Benjamini Yukateli</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
137 <option value="bonferroni">Bonferroni</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
138 <option value="hochberg">Hochberg</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
139 <option value="holm">Holm</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
140 <option value="hommel">Hommel</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
141 <option value="none">no control for multiple tests</option>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
142 </param>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
143 </inputs>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
144 <outputs>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
145 <data format="tabular" name="out_edgeR" label="${title}_topTable_edgeR.xls">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
146 <filter>edgeR['doedgeR'] == "T"</filter>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
147 </data>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
148 <data format="tabular" name="out_DESeq2" label="${title}_topTable_DESeq2.xls">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
149 <filter>DESeq2['doDESeq2'] == "T"</filter>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
150 </data>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
151 <data format="tabular" name="out_VOOM" label="${title}_topTable_VOOM.xls">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
152 <filter>doVoom == "T"</filter>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
153 </data>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
154 <data format="html" name="html_file" label="${title}.html"/>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
155 </outputs>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
156 <stdio>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
157 <exit_code range="4" level="fatal" description="Number of subject ids must match total number of samples in the input matrix" />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
158 </stdio>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
159 <tests>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
160 <test>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
161 <param name='input1' value='test_bams2mx.xls' ftype='tabular' />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
162 <param name='treatment_name' value='liver' />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
163 <param name='title' value='edgeRtest' />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
164 <param name='useNDF' value='' />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
165 <param name='doedgeR' value='T' />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
166 <param name='doVoom' value='T' />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
167 <param name='doDESeq2' value='T' />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
168 <param name='fdrtype' value='fdr' />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
169 <param name='edgeR_priordf' value="8" />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
170 <param name='edgeR_robust' value="ordinary" />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
171 <param name='fdrthresh' value="0.05" />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
172 <param name='control_name' value='heart' />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
173 <param name='subjectids' value='' />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
174 <param name='Control_cols' value='3,4,5,9' />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
175 <param name='Treat_cols' value='2,6,7,8' />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
176 <output name='out_edgeR' file='edgeRtest1out.xls' compare='diff' />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
177 <output name='html_file' file='edgeRtest1out.html' compare='diff' lines_diff='20' />
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
178 </test>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
179 </tests>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
180
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
181 <configfiles>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
182 <configfile name="runme">
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
183 <![CDATA[
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
184 #
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
185 # edgeR.Rscript
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
186 # updated feb 2014 adding outlier-robust deviance estimate options by ross for R 3.0.2/bioc 2.13
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
187 # updated npv 2011 for R 2.14.0 and edgeR 2.4.0 by ross
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
188 # Performs DGE on a count table containing n replicates of two conditions
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
189 #
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
190 # Parameters
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
191 #
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
192 # 1 - Output Dir
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
193
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
194 # Original edgeR code by: S.Lunke and A.Kaspi
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
195 reallybig = log10(.Machine\$double.xmax)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
196 reallysmall = log10(.Machine\$double.xmin)
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
197 library("stringr")
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
198 library("gplots")
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
199 library("edgeR")
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
200 hmap2 = function(cmat,nsamp=100,outpdfname='heatmap2.pdf', TName='Treatment',group=NA,myTitle='title goes here')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
201 {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
202 # Perform clustering for significant pvalues after controlling FWER
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
203 samples = colnames(cmat)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
204 gu = unique(group)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
205 gn = rownames(cmat)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
206 if (length(gu) == 2) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
207 col.map = function(g) {if (g==gu[1]) "#FF0000" else "#0000FF"}
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
208 pcols = unlist(lapply(group,col.map))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
209 } else {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
210 colours = rainbow(length(gu),start=0,end=4/6)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
211 pcols = colours[match(group,gu)] }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
212 dm = cmat[(! is.na(gn)),]
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
213 # remove unlabelled hm rows
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
214 nprobes = nrow(dm)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
215 # sub = paste('Showing',nprobes,'contigs ranked for evidence of differential abundance')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
216 if (nprobes > nsamp) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
217 dm =dm[1:nsamp,]
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
218 #sub = paste('Showing',nsamp,'contigs ranked for evidence for differential abundance out of',nprobes,'total')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
219 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
220 newcolnames = substr(colnames(dm),1,20)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
221 colnames(dm) = newcolnames
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
222 pdf(outpdfname)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
223 heatmap.2(dm,main=myTitle,ColSideColors=pcols,col=topo.colors(100),dendrogram="col",key=T,density.info='none',
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
224 Rowv=F,scale='row',trace='none',margins=c(8,8),cexRow=0.4,cexCol=0.5)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
225 dev.off()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
226 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
227
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
228 hmap = function(cmat,nmeans=4,outpdfname="heatMap.pdf",nsamp=250,TName='Treatment',group=NA,myTitle="Title goes here")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
229 {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
230 # for 2 groups only was
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
231 #col.map = function(g) {if (g==TName) "#FF0000" else "#0000FF"}
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
232 #pcols = unlist(lapply(group,col.map))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
233 gu = unique(group)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
234 colours = rainbow(length(gu),start=0.3,end=0.6)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
235 pcols = colours[match(group,gu)]
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
236 nrows = nrow(cmat)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
237 mtitle = paste(myTitle,'Heatmap: n contigs =',nrows)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
238 if (nrows > nsamp) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
239 cmat = cmat[c(1:nsamp),]
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
240 mtitle = paste('Heatmap: Top ',nsamp,' DE contigs (of ',nrows,')',sep='')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
241 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
242 newcolnames = substr(colnames(cmat),1,20)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
243 colnames(cmat) = newcolnames
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
244 pdf(outpdfname)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
245 heatmap(cmat,scale='row',main=mtitle,cexRow=0.3,cexCol=0.4,Rowv=NA,ColSideColors=pcols)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
246 dev.off()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
247 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
248
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
249 qqPlot = function(descr='qqplot',pvector, outpdf='qqplot.pdf',...)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
250 # stolen from https://gist.github.com/703512
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
251 {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
252 o = -log10(sort(pvector,decreasing=F))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
253 e = -log10( 1:length(o)/length(o) )
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
254 o[o==-Inf] = reallysmall
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
255 o[o==Inf] = reallybig
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
256 maint = descr
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
257 pdf(outpdf)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
258 plot(e,o,pch=19,cex=1, main=maint, ...,
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
259 xlab=expression(Expected~~-log[10](italic(p))),
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
260 ylab=expression(Observed~~-log[10](italic(p))),
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
261 xlim=c(0,max(e)), ylim=c(0,max(o)))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
262 lines(e,e,col="red")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
263 grid(col = "lightgray", lty = "dotted")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
264 dev.off()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
265 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
266
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
267 smearPlot = function(myDGEList,deTags, outSmear, outMain)
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
268 {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
269 pdf(outSmear)
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
270 plotSmear(myDGEList,de.tags=deTags,main=outMain)
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
271 grid(col="lightgray", lty="dotted")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
272 dev.off()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
273 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
274
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
275 boxPlot = function(rawrs,cleanrs,maint,myTitle,pdfname)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
276 { #
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
277 nc = ncol(rawrs)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
278 for (i in c(1:nc)) {rawrs[(rawrs[,i] < 0),i] = NA}
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
279 fullnames = colnames(rawrs)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
280 newcolnames = substr(colnames(rawrs),1,20)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
281 colnames(rawrs) = newcolnames
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
282 newcolnames = substr(colnames(cleanrs),1,20)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
283 colnames(cleanrs) = newcolnames
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
284 defpar = par(no.readonly=T)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
285 print.noquote('raw contig counts by sample:')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
286 print.noquote(summary(rawrs))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
287 print.noquote('normalised contig counts by sample:')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
288 print.noquote(summary(cleanrs))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
289 pdf(pdfname)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
290 par(mfrow=c(1,2))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
291 boxplot(rawrs,varwidth=T,notch=T,ylab='log contig count',col="maroon",las=3,cex.axis=0.35,main=paste('Raw:',maint))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
292 grid(col="lightgray",lty="dotted")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
293 boxplot(cleanrs,varwidth=T,notch=T,ylab='log contig count',col="maroon",las=3,cex.axis=0.35,main=paste('After ',maint))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
294 grid(col="lightgray",lty="dotted")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
295 dev.off()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
296 pdfname = "sample_counts_histogram.pdf"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
297 nc = ncol(rawrs)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
298 print.noquote(paste('Using ncol rawrs=',nc))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
299 ncroot = round(sqrt(nc))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
300 if (ncroot*ncroot < nc) { ncroot = ncroot + 1 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
301 m = c()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
302 for (i in c(1:nc)) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
303 rhist = hist(rawrs[,i],breaks=100,plot=F)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
304 m = append(m,max(rhist\$counts))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
305 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
306 ymax = max(m)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
307 ncols = length(fullnames)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
308 if (ncols > 20)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
309 {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
310 scale = 7*ncols/20
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
311 pdf(pdfname,width=scale,height=scale)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
312 } else {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
313 pdf(pdfname)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
314 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
315 par(mfrow=c(ncroot,ncroot))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
316 for (i in c(1:nc)) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
317 hist(rawrs[,i], main=paste("Contig logcount",i), xlab='log raw count', col="maroon",
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
318 breaks=100,sub=fullnames[i],cex=0.8,ylim=c(0,ymax))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
319 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
320 dev.off()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
321 par(defpar)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
322
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
323 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
324
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
325 cumPlot = function(rawrs,cleanrs,maint,myTitle)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
326 { # updated to use ecdf
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
327 pdfname = "Filtering_rowsum_bar_charts.pdf"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
328 defpar = par(no.readonly=T)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
329 lrs = log(rawrs,10)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
330 lim = max(lrs)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
331 pdf(pdfname)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
332 par(mfrow=c(2,1))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
333 hist(lrs,breaks=100,main=paste('Before:',maint),xlab="# Reads (log)",
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
334 ylab="Count",col="maroon",sub=myTitle, xlim=c(0,lim),las=1)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
335 grid(col="lightgray", lty="dotted")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
336 lrs = log(cleanrs,10)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
337 hist(lrs,breaks=100,main=paste('After:',maint),xlab="# Reads (log)",
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
338 ylab="Count",col="maroon",sub=myTitle,xlim=c(0,lim),las=1)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
339 grid(col="lightgray", lty="dotted")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
340 dev.off()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
341 par(defpar)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
342 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
343
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
344 cumPlot1 = function(rawrs,cleanrs,maint,myTitle)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
345 { # updated to use ecdf
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
346 pdfname = paste(gsub(" ","", myTitle , fixed=TRUE),"RowsumCum.pdf",sep='_')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
347 pdf(pdfname)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
348 par(mfrow=c(2,1))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
349 lastx = max(rawrs)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
350 rawe = knots(ecdf(rawrs))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
351 cleane = knots(ecdf(cleanrs))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
352 cy = 1:length(cleane)/length(cleane)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
353 ry = 1:length(rawe)/length(rawe)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
354 plot(rawe,ry,type='l',main=paste('Before',maint),xlab="Log Contig Total Reads",
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
355 ylab="Cumulative proportion",col="maroon",log='x',xlim=c(1,lastx),sub=myTitle)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
356 grid(col="blue")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
357 plot(cleane,cy,type='l',main=paste('After',maint),xlab="Log Contig Total Reads",
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
358 ylab="Cumulative proportion",col="maroon",log='x',xlim=c(1,lastx),sub=myTitle)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
359 grid(col="blue")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
360 dev.off()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
361 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
362
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
363
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
364
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
365 doGSEAold = function(y=NULL,design=NULL,histgmt="",
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
366 bigmt="/data/genomes/gsea/3.1/Abetterchoice_nocgp_c2_c3_c5_symbols_all.gmt",
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
367 ntest=0, myTitle="myTitle", outfname="GSEA.xls", minnin=5, maxnin=2000,fdrthresh=0.05,fdrtype="BH")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
368 {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
369 sink('Camera.log')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
370 genesets = c()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
371 if (bigmt > "")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
372 {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
373 bigenesets = readLines(bigmt)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
374 genesets = bigenesets
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
375 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
376 if (histgmt > "")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
377 {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
378 hgenesets = readLines(histgmt)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
379 if (bigmt > "") {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
380 genesets = rbind(genesets,hgenesets)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
381 } else {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
382 genesets = hgenesets
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
383 } # use only history if no bi
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
384 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
385 print.noquote(paste("@@@read",length(genesets), 'genesets from',histgmt,bigmt))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
386 genesets = strsplit(genesets,'\t') # tabular. genesetid\tURLorwhatever\tgene_1\t..\tgene_n
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
387 outf = outfname
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
388 head=paste(myTitle,'edgeR GSEA')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
389 write(head,file=outfname,append=F)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
390 ntest=length(genesets)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
391 urownames = toupper(rownames(y))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
392 upcam = c()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
393 downcam = c()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
394 for (i in 1:ntest) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
395 gs = unlist(genesets[i])
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
396 g = gs[1] # geneset_id
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
397 u = gs[2]
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
398 if (u > "") { u = paste("<a href=\'",u,"\'>",u,"</a>",sep="") }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
399 glist = gs[3:length(gs)] # member gene symbols
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
400 glist = toupper(glist)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
401 inglist = urownames %in% glist
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
402 nin = sum(inglist)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
403 if ((nin > minnin) && (nin < maxnin)) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
404 ### print(paste('@@found',sum(inglist),'genes in glist'))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
405 camres = camera(y=y,index=inglist,design=design)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
406 if (! is.null(camres)) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
407 rownames(camres) = g # gene set name
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
408 camres = cbind(GeneSet=g,URL=u,camres)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
409 if (camres\$Direction == "Up")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
410 {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
411 upcam = rbind(upcam,camres) } else {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
412 downcam = rbind(downcam,camres)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
413 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
414 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
415 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
416 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
417 uscam = upcam[order(upcam\$PValue),]
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
418 unadjp = uscam\$PValue
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
419 uscam\$adjPValue = p.adjust(unadjp,method=fdrtype)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
420 nup = max(10,sum((uscam\$adjPValue < fdrthresh)))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
421 dscam = downcam[order(downcam\$PValue),]
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
422 unadjp = dscam\$PValue
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
423 dscam\$adjPValue = p.adjust(unadjp,method=fdrtype)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
424 ndown = max(10,sum((dscam\$adjPValue < fdrthresh)))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
425 write.table(uscam,file=paste('camera_up',outfname,sep='_'),quote=F,sep='\t',row.names=F)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
426 write.table(dscam,file=paste('camera_down',outfname,sep='_'),quote=F,sep='\t',row.names=F)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
427 print.noquote(paste('@@@@@ Camera up top',nup,'gene sets:'))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
428 write.table(head(uscam,nup),file="",quote=F,sep='\t',row.names=F)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
429 print.noquote(paste('@@@@@ Camera down top',ndown,'gene sets:'))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
430 write.table(head(dscam,ndown),file="",quote=F,sep='\t',row.names=F)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
431 sink()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
432 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
433
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
434
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
435
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
436
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
437 doGSEA = function(y=NULL,design=NULL,histgmt="",
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
438 bigmt="/data/genomes/gsea/3.1/Abetterchoice_nocgp_c2_c3_c5_symbols_all.gmt",
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
439 ntest=0, myTitle="myTitle", outfname="GSEA.xls", minnin=5, maxnin=2000,fdrthresh=0.05,fdrtype="BH")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
440 {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
441 sink('Camera.log')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
442 genesets = c()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
443 if (bigmt > "")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
444 {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
445 bigenesets = readLines(bigmt)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
446 genesets = bigenesets
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
447 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
448 if (histgmt > "")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
449 {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
450 hgenesets = readLines(histgmt)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
451 if (bigmt > "") {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
452 genesets = rbind(genesets,hgenesets)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
453 } else {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
454 genesets = hgenesets
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
455 } # use only history if no bi
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
456 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
457 print.noquote(paste("@@@read",length(genesets), 'genesets from',histgmt,bigmt))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
458 genesets = strsplit(genesets,'\t') # tabular. genesetid\tURLorwhatever\tgene_1\t..\tgene_n
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
459 outf = outfname
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
460 head=paste(myTitle,'edgeR GSEA')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
461 write(head,file=outfname,append=F)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
462 ntest=length(genesets)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
463 urownames = toupper(rownames(y))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
464 upcam = c()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
465 downcam = c()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
466 incam = c()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
467 urls = c()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
468 gsids = c()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
469 for (i in 1:ntest) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
470 gs = unlist(genesets[i])
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
471 gsid = gs[1] # geneset_id
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
472 url = gs[2]
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
473 if (url > "") { url = paste("<a href=\'",url,"\'>",url,"</a>",sep="") }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
474 glist = gs[3:length(gs)] # member gene symbols
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
475 glist = toupper(glist)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
476 inglist = urownames %in% glist
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
477 nin = sum(inglist)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
478 if ((nin > minnin) && (nin < maxnin)) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
479 incam = c(incam,inglist)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
480 gsids = c(gsids,gsid)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
481 urls = c(urls,url)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
482 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
483 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
484 incam = as.list(incam)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
485 names(incam) = gsids
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
486 allcam = camera(y=y,index=incam,design=design)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
487 allcamres = cbind(geneset=gsids,allcam,URL=urls)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
488 for (i in 1:ntest) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
489 camres = allcamres[i]
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
490 res = try(test = (camres\$Direction == "Up"))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
491 if ("try-error" %in% class(res)) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
492 cat("test failed, camres = :")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
493 print.noquote(camres)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
494 } else { if (camres\$Direction == "Up")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
495 { upcam = rbind(upcam,camres)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
496 } else { downcam = rbind(downcam,camres)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
497 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
498
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
499 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
500 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
501 uscam = upcam[order(upcam\$PValue),]
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
502 unadjp = uscam\$PValue
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
503 uscam\$adjPValue = p.adjust(unadjp,method=fdrtype)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
504 nup = max(10,sum((uscam\$adjPValue < fdrthresh)))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
505 dscam = downcam[order(downcam\$PValue),]
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
506 unadjp = dscam\$PValue
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
507 dscam\$adjPValue = p.adjust(unadjp,method=fdrtype)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
508 ndown = max(10,sum((dscam\$adjPValue < fdrthresh)))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
509 write.table(uscam,file=paste('camera_up',outfname,sep='_'),quote=F,sep='\t',row.names=F)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
510 write.table(dscam,file=paste('camera_down',outfname,sep='_'),quote=F,sep='\t',row.names=F)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
511 print.noquote(paste('@@@@@ Camera up top',nup,'gene sets:'))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
512 write.table(head(uscam,nup),file="",quote=F,sep='\t',row.names=F)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
513 print.noquote(paste('@@@@@ Camera down top',ndown,'gene sets:'))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
514 write.table(head(dscam,ndown),file="",quote=F,sep='\t',row.names=F)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
515 sink()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
516 }
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
517
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
518
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
519 edgeIt = function (Count_Matrix=c(),group=c(),out_edgeR=F,out_Voom=F,out_DESeq2=F,fdrtype='fdr',priordf=5,
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
520 fdrthresh=0.05,outputdir='.', myTitle='Differential Counts',libSize=c(),useNDF=F,
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
521 filterquantile=0.2, subjects=c(),mydesign=NULL,
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
522 doDESeq2=T,doVoom=T,doCamera=T,doedgeR=T,org='hg19',
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
523 histgmt="", bigmt="/data/genomes/gsea/3.1/Abetterchoice_nocgp_c2_c3_c5_symbols_all.gmt",
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
524 doCook=F,DESeq_fitType="parameteric",robust_meth='ordinary')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
525 {
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
526
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
527
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
528 run_edgeR = function(workCM,pdata,subjects,group,priordf,robust_meth,mydesign,mt,cmrowsums,out_edgeR)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
529 {
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
530 sink('edgeR.log')
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
531 #### Setup myDGEList object
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
532 myDGEList = DGEList(counts=workCM, group = group)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
533 myDGEList = calcNormFactors(myDGEList)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
534 if (robust_meth == 'ordinary') {
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
535 myDGEList = estimateGLMCommonDisp(myDGEList,mydesign)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
536 myDGEList = estimateGLMTrendedDisp(myDGEList,mydesign)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
537 if (priordf > 0) { myDGEList = estimateGLMTagwiseDisp(myDGEList,mydesign,prior.df = priordf)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
538 } else { myDGEList = estimateGLMTagwiseDisp(myDGEList,mydesign) }
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
539 comdisp = myDGEList\$common.dispersion
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
540 estpriorn = getPriorN(myDGEList)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
541 print(paste("Common Dispersion =",comdisp,"CV = ",sqrt(comdisp),"getPriorN = ",estpriorn),quote=F)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
542 } else {
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
543 myDGEList = estimateGLMRobustDisp(myDGEList,design=mydesign, prior.df = priordf, maxit = 6, residual.type = robust_meth)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
544 }
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
545
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
546
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
547 DGLM = glmFit(myDGEList,design=mydesign)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
548 DE = glmLRT(DGLM,coef=ncol(DGLM\$design)) # always last one - subject is first if needed
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
549 efflib = myDGEList\$samples\$lib.size*myDGEList\$samples\$norm.factors
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
550 normData = (1e+06*myDGEList\$counts/efflib)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
551 uoutput = cbind(
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
552 Name=as.character(rownames(myDGEList\$counts)),
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
553 DE\$table,
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
554 adj.p.value=p.adjust(DE\$table\$PValue, method=fdrtype),
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
555 Dispersion=myDGEList\$tagwise.dispersion,totreads=cmrowsums,normData,
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
556 myDGEList\$counts
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
557 )
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
558 soutput = uoutput[order(DE\$table\$PValue),] # sorted into p value order - for quick toptable
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
559 goodness = gof(DGLM, pcutoff=fdrthresh)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
560 if (sum(goodness\$outlier) > 0) {
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
561 print.noquote('GLM outliers:')
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
562 print(paste(rownames(DGLM)[(goodness\$outlier)],collapse=','),quote=F)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
563 } else {
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
564 print('No GLM fit outlier genes found\n')
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
565 }
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
566 z = limma::zscoreGamma(goodness\$gof.statistic, shape=goodness\$df/2, scale=2)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
567 pdf(paste("edgeR",mt,"GoodnessofFit.pdf",sep='_'))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
568 qq = qqnorm(z, panel.first=grid(), main="tagwise dispersion")
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
569 abline(0,1,lwd=3)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
570 points(qq\$x[goodness\$outlier],qq\$y[goodness\$outlier], pch=16, col="maroon")
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
571 dev.off()
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
572 uniqueg = unique(group)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
573 #### Plot MDS
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
574 sample_colors = match(group,levels(group))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
575 sampleTypes = levels(factor(group))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
576 print.noquote(sampleTypes)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
577 pdf(paste("edgeR",mt,"MDSplot.pdf",sep='_'))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
578 plotMDS.DGEList(myDGEList,main=paste("edgeR MDS for",myTitle),cex=0.5,col=sample_colors,pch=sample_colors)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
579 legend(x="topleft", legend = sampleTypes,col=c(1:length(sampleTypes)), pch=19)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
580 grid(col="blue")
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
581 dev.off()
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
582 colnames(normData) = paste( colnames(normData),'N',sep="_")
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
583 print(paste('Raw sample read totals',paste(colSums(nonzerod,na.rm=T),collapse=',')))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
584 nzd = data.frame(log(nonzerod + 1e-2,10))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
585 try( boxPlot(rawrs=nzd,cleanrs=log(normData,10),maint='TMM Normalisation',myTitle=myTitle,pdfname=paste("edgeR",mt,"raw_norm_counts_box.pdf",sep='_') ))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
586 write.table(soutput,file=out_edgeR, quote=FALSE, sep="\t",row.names=F)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
587 tt = cbind(
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
588 Name=as.character(rownames(myDGEList)),
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
589 DE\$table,
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
590 adj.p.value=p.adjust(DE\$table\$PValue, method=fdrtype),
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
591 Dispersion=myDGEList\$tagwise.dispersion,totreads=cmrowsums
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
592 )
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
593 print.noquote("# edgeR Top tags\n")
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
594 tt = cbind(tt,URL=contigurls) # add to end so table isn't laid out strangely
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
595 tt = tt[order(DE\$table\$PValue),]
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
596 print.noquote(tt[1:50,])
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
597 deTags = rownames(uoutput[uoutput\$adj.p.value < fdrthresh,])
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
598 nsig = length(deTags)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
599 print(paste('#',nsig,'tags significant at adj p=',fdrthresh),quote=F)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
600 deColours = ifelse(deTags,'red','black')
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
601 pdf(paste("edgeR",mt,"BCV_vs_abundance.pdf",sep="_"))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
602 plotBCV(myDGEList, cex=0.3, main="Biological CV vs abundance")
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
603 dev.off()
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
604 dg = myDGEList[order(DE\$table\$PValue),]
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
605 #normData = (1e+06 * dg\$counts/expandAsMatrix(dg\$samples\$lib.size, dim(dg)))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
606 outpdfname= paste("edgeR",mt,"top_100_heatmap.pdf",sep="_")
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
607 hmap2(normData,nsamp=100,TName=TName,group=group,outpdfname=outpdfname,myTitle=paste(myTitle,'Heatmap'))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
608 outSmear = paste("edgeR",mt,"smearplot.pdf",sep="_")
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
609 outMain = paste("Smear Plot for ",TName,' Vs ',CName,' (FDR@',fdrthresh,' N = ',nsig,')',sep='')
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
610 smearPlot(myDGEList=myDGEList,deTags=deTags, outSmear=outSmear, outMain = outMain)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
611 qqPlot(descr=paste(myTitle,'edgeR adj p QQ plot'),pvector=tt\$adj.p.value,outpdf=paste('edgeR',mt,'qqplot.pdf',sep='_'))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
612 norm.factor = myDGEList\$samples\$norm.factors
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
613 topresults.edgeR = soutput[which(soutput\$adj.p.value < fdrthresh), ]
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
614 edgeRcountsindex = which(allgenes %in% rownames(topresults.edgeR))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
615 edgeRcounts = rep(0, length(allgenes))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
616 edgeRcounts[edgeRcountsindex] = 1 # Create venn diagram of hits
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
617 sink()
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
618 return(list(myDGEList=myDGEList,edgeRcounts=edgeRcounts))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
619 } ### run_edgeR
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
620
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
621
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
622 run_DESeq2 = function(workCM,pdata,subjects,group,out_DESeq2,mt,DESeq_fitType)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
623
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
624 {
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
625 sink("DESeq2.log")
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
626 # DESeq2
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
627 require('DESeq2')
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
628 library('RColorBrewer')
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
629 if (length(subjects) == 0)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
630 {
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
631 pdata = data.frame(Name=colnames(workCM),Rx=group,row.names=colnames(workCM))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
632 deSEQds = DESeqDataSetFromMatrix(countData = workCM, colData = pdata, design = formula(~ Rx))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
633 } else {
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
634 pdata = data.frame(Name=colnames(workCM),Rx=group,subjects=subjects,row.names=colnames(workCM))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
635 deSEQds = DESeqDataSetFromMatrix(countData = workCM, colData = pdata, design = formula(~ subjects + Rx))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
636 }
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
637 #DESeq2 = DESeq(deSEQds,fitType='local',pAdjustMethod=fdrtype)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
638 #rDESeq = results(DESeq2)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
639 #newCountDataSet(workCM, group)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
640 deSeqDatsizefac = estimateSizeFactors(deSEQds)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
641 deSeqDatdisp = estimateDispersions(deSeqDatsizefac,fitType=DESeq_fitType)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
642 resDESeq = nbinomWaldTest(deSeqDatdisp)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
643 rDESeq = as.data.frame(results(resDESeq))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
644 rDESeq = cbind(Contig=rownames(workCM),rDESeq,NReads=cmrowsums,URL=contigurls)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
645 srDESeq = rDESeq[order(rDESeq\$pvalue),]
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
646 qqPlot(descr=paste(myTitle,'DESeq2 adj p qq plot'),pvector=rDESeq\$padj,outpdf=paste('DESeq2',mt,'qqplot.pdf',sep="_"))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
647 cat("# DESeq top 50\n")
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
648 print.noquote(srDESeq[1:50,])
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
649 write.table(srDESeq,file=out_DESeq2, quote=FALSE, sep="\t",row.names=F)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
650 topresults.DESeq = rDESeq[which(rDESeq\$padj < fdrthresh), ]
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
651 DESeqcountsindex = which(allgenes %in% rownames(topresults.DESeq))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
652 DESeqcounts = rep(0, length(allgenes))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
653 DESeqcounts[DESeqcountsindex] = 1
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
654 pdf(paste("DESeq2",mt,"dispersion_estimates.pdf",sep='_'))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
655 plotDispEsts(resDESeq)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
656 dev.off()
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
657 ysmall = abs(min(rDESeq\$log2FoldChange))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
658 ybig = abs(max(rDESeq\$log2FoldChange))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
659 ylimit = min(4,ysmall,ybig)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
660 pdf(paste("DESeq2",mt,"MA_plot.pdf",sep="_"))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
661 plotMA(resDESeq,main=paste(myTitle,"DESeq2 MA plot"),ylim=c(-ylimit,ylimit))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
662 dev.off()
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
663 rlogres = rlogTransformation(resDESeq)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
664 sampledists = dist( t( assay(rlogres) ) )
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
665 sdmat = as.matrix(sampledists)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
666 pdf(paste("DESeq2",mt,"sample_distance_plot.pdf",sep="_"))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
667 heatmap.2(sdmat,trace="none",main=paste(myTitle,"DESeq2 sample distances"),
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
668 col = colorRampPalette( rev(brewer.pal(9, "RdBu")) )(255))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
669 dev.off()
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
670 ###outpdfname=paste("DESeq2",mt,"top50_heatmap.pdf",sep="_")
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
671 ###hmap2(sresDESeq,nsamp=50,TName=TName,group=group,outpdfname=outpdfname,myTitle=paste('DESeq2 vst rlog Heatmap',myTitle))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
672 sink()
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
673 result = try( (ppca = plotPCA( varianceStabilizingTransformation(deSeqDatdisp,blind=T), intgroup=c("Rx","Name")) ) )
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
674 if ("try-error" %in% class(result)) {
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
675 print.noquote('DESeq2 plotPCA failed.')
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
676 } else {
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
677 pdf(paste("DESeq2",mt,"PCA_plot.pdf",sep="_"))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
678 #### wtf - print? Seems needed to get this to work
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
679 print(ppca)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
680 dev.off()
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
681 }
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
682 return(DESeqcounts)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
683 }
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
684
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
685
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
686 run_Voom = function(workCM,pdata,subjects,group,mydesign,mt,out_Voom)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
687 {
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
688 sink('VOOM.log')
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
689 if (doedgeR == F) {
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
690 #### Setup myDGEList object
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
691 myDGEList = DGEList(counts=workCM, group = group)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
692 myDGEList = calcNormFactors(myDGEList)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
693 myDGEList = estimateGLMCommonDisp(myDGEList,mydesign)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
694 myDGEList = estimateGLMTrendedDisp(myDGEList,mydesign)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
695 myDGEList = estimateGLMTagwiseDisp(myDGEList,mydesign)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
696 }
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
697 pdf(paste("VOOM",mt,"mean_variance_plot.pdf",sep='_'))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
698 dat.voomed <- voom(myDGEList, mydesign, plot = TRUE, normalize.method="quantil", lib.size = NULL)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
699 dev.off()
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
700 # Use limma to fit data
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
701 fit = lmFit(dat.voomed, mydesign)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
702 fit = eBayes(fit)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
703 rvoom = topTable(fit, coef = length(colnames(mydesign)), adj = fdrtype, n = Inf, sort="none")
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
704 qqPlot(descr=paste(myTitle,'VOOM-limma adj p QQ plot'),pvector=rvoom\$adj.P.Val,outpdf=paste('VOOM',mt,'qqplot.pdf',sep='_'))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
705 rownames(rvoom) = rownames(workCM)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
706 rvoom = cbind(rvoom,NReads=cmrowsums,URL=contigurls)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
707 srvoom = rvoom[order(rvoom\$P.Value),]
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
708 cat("# VOOM top 50\n")
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
709 print(srvoom[1:50,])
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
710 write.table(srvoom,file=out_Voom, quote=FALSE, sep="\t",row.names=F)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
711 # Use an FDR cutoff to find interesting samples for edgeR, DESeq and voom/limma
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
712 topresults.voom = rvoom[which(rvoom\$adj.P.Val < fdrthresh), ]
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
713 voomcountsindex <- which(allgenes %in% rownames(topresults.voom))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
714 voomcounts = rep(0, length(allgenes))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
715 voomcounts[voomcountsindex] = 1
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
716 sink()
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
717 return(voomcounts)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
718 }
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
719
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
720
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
721 #### data cleaning and analsis control starts here
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
722
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
723 # Error handling
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
724 nugroup = length(unique(group))
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
725 if (nugroup!=2){
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
726 print("Number of conditions identified in experiment does not equal 2")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
727 q()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
728 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
729 require(edgeR)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
730 options(width = 512)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
731 mt = paste(unlist(strsplit(myTitle,'_')),collapse=" ")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
732 allN = nrow(Count_Matrix)
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
733 nscut = round(ncol(Count_Matrix)/2) # half samples
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
734 colTotmillionreads = colSums(Count_Matrix)/1e6
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
735 counts.dataframe = as.data.frame(c())
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
736 rawrs = rowSums(Count_Matrix)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
737 nonzerod = Count_Matrix[(rawrs > 0),] # remove all zero count genes
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
738 nzN = nrow(nonzerod)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
739 nzrs = rowSums(nonzerod)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
740 zN = allN - nzN
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
741 print('# Quantiles for non-zero row counts:',quote=F)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
742 print(quantile(nzrs,probs=seq(0,1,0.1)),quote=F)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
743 if (useNDF == T)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
744 {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
745 gt1rpin3 = rowSums(Count_Matrix/expandAsMatrix(colTotmillionreads,dim(Count_Matrix)) >= 1) >= nscut
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
746 lo = colSums(Count_Matrix[!gt1rpin3,])
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
747 workCM = Count_Matrix[gt1rpin3,]
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
748 cleanrs = rowSums(workCM)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
749 cleanN = length(cleanrs)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
750 meth = paste( "After removing",length(lo),"contigs with fewer than ",nscut," sample read counts >= 1 per million, there are",sep="")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
751 print(paste("Read",allN,"contigs. Removed",zN,"contigs with no reads.",meth,cleanN,"contigs"),quote=F)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
752 maint = paste('Filter >=1/million reads in >=',nscut,'samples')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
753 } else {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
754 useme = (nzrs > quantile(nzrs,filterquantile))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
755 workCM = nonzerod[useme,]
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
756 lo = colSums(nonzerod[!useme,])
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
757 cleanrs = rowSums(workCM)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
758 cleanN = length(cleanrs)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
759 meth = paste("After filtering at count quantile =",filterquantile,", there are",sep="")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
760 print(paste('Read',allN,"contigs. Removed",zN,"with no reads.",meth,cleanN,"contigs"),quote=F)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
761 maint = paste('Filter below',filterquantile,'quantile')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
762 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
763 cumPlot(rawrs=rawrs,cleanrs=cleanrs,maint=maint,myTitle=myTitle)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
764 allgenes = rownames(workCM)
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
765 reg = "^chr([0-9]+):([0-9]+)-([0-9]+)" # ucsc chr:start-end regexp
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
766 genecards="<a href=\'http://www.genecards.org/index.php?path=/Search/keyword/"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
767 ucsc = paste("<a href=\'http://genome.ucsc.edu/cgi-bin/hgTracks?db=",org,sep='')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
768 testreg = str_match(allgenes,reg)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
769 if (sum(!is.na(testreg[,1]))/length(testreg[,1]) > 0.8) # is ucsc style string
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
770 {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
771 print("@@ using ucsc substitution for urls")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
772 contigurls = paste0(ucsc,"&amp;position=chr",testreg[,2],":",testreg[,3],"-",testreg[,4],"\'>",allgenes,"</a>")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
773 } else {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
774 print("@@ using genecards substitution for urls")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
775 contigurls = paste0(genecards,allgenes,"\'>",allgenes,"</a>")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
776 }
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
777 print.noquote("# urls sample")
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
778 print.noquote(head(contigurls))
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
779 print(paste("# Total low count contigs per sample = ",table(lo)),quote=F)
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
780 cmrowsums = rowSums(workCM)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
781 TName=unique(group)[1]
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
782 CName=unique(group)[2]
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
783 if (is.null(mydesign)) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
784 if (length(subjects) == 0)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
785 {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
786 mydesign = model.matrix(~group)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
787 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
788 else {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
789 subjf = factor(subjects)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
790 mydesign = model.matrix(~subjf+group) # we block on subject so make group last to simplify finding it
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
791 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
792 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
793 print.noquote(paste('Using samples:',paste(colnames(workCM),collapse=',')))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
794 print.noquote('Using design matrix:')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
795 print.noquote(mydesign)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
796 if (doedgeR == T) {
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
797 eres = run_edgeR(workCM,pdata,subjects,group,priordf,robust_meth,mydesign,mt,cmrowsums,out_edgeR)
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
798 myDGEList = eres\$myDGEList
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
799 edgeRcounts = eres\$edgeRcounts
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
800 }
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
801 if (doDESeq2 == T) { DESeqcounts = run_DESeq2(workCM,pdata,subjects,group,out_DESeq2,mt,DESeq_fitType) }
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
802 if (doVoom == T) { voomcounts = run_Voom(workCM,pdata,subjects,group,mydesign,mt,out_Voom) }
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
803
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
804
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
805 if (doCamera) {
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
806 doGSEA(y=myDGEList,design=mydesign,histgmt=histgmt,bigmt=bigmt,ntest=20,myTitle=myTitle,
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
807 outfname=paste("GSEA_Camera",mt,"table.xls",sep="_"),fdrthresh=fdrthresh,fdrtype=fdrtype)
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
808 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
809 counts.dataframe = c()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
810 vennmain = 'no venn'
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
811 if ((doDESeq2==T) || (doVoom==T) || (doedgeR==T)) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
812 if ((doVoom==T) && (doDESeq2==T) && (doedgeR==T)) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
813 vennmain = paste(mt,'Voom,edgeR and DESeq2 overlap at FDR=',fdrthresh)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
814 counts.dataframe = data.frame(edgeR = edgeRcounts, DESeq2 = DESeqcounts,
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
815 VOOM_limma = voomcounts, row.names = allgenes)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
816 } else if ((doDESeq2==T) && (doedgeR==T)) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
817 vennmain = paste(mt,'DESeq2 and edgeR overlap at FDR=',fdrthresh)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
818 counts.dataframe = data.frame(edgeR = edgeRcounts, DESeq2 = DESeqcounts, row.names = allgenes)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
819 } else if ((doVoom==T) && (doedgeR==T)) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
820 vennmain = paste(mt,'Voom and edgeR overlap at FDR=',fdrthresh)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
821 counts.dataframe = data.frame(edgeR = edgeRcounts, VOOM_limma = voomcounts, row.names = allgenes)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
822 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
823
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
824 if (nrow(counts.dataframe > 1)) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
825 counts.venn = vennCounts(counts.dataframe)
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
826 vennf = paste("Venn",mt,"significant_genes_overlap.pdf",sep="_")
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
827 pdf(vennf)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
828 vennDiagram(counts.venn,main=vennmain,col="maroon")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
829 dev.off()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
830 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
831 } #### doDESeq2 or doVoom
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
832
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
833 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
834 #### Done
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
835
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
836 ###sink(stdout(),append=T,type="message")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
837 builtin_gmt = ""
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
838 history_gmt = ""
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
839 history_gmt_name = ""
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
840 out_edgeR = F
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
841 out_DESeq2 = F
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
842 out_Voom = "$out_VOOM"
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
843 edgeR_robust_meth = "ordinary" # control robust deviance options
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
844 doDESeq2 = $DESeq2.doDESeq2
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
845 doVoom = $doVoom
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
846 doCamera = F
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
847 doedgeR = $edgeR.doedgeR
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
848 edgeR_priordf = 10
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
849
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
850
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
851 #if $doVoom == "T":
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
852 out_Voom = "$out_VOOM"
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
853 #end if
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
854
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
855 #if $DESeq2.doDESeq2 == "T":
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
856 out_DESeq2 = "$out_DESeq2"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
857 doDESeq2 = T
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
858 DESeq_fitType = "$DESeq2.DESeq_fitType"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
859 #end if
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
860
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
861 #if $edgeR.doedgeR == "T":
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
862 out_edgeR = "$out_edgeR"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
863 edgeR_priordf = $edgeR.edgeR_priordf
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
864 edgeR_robust_meth = "$edgeR.edgeR_robust_method"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
865 #end if
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
866
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
867
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
868 if (sum(c(doedgeR,doVoom,doDESeq2)) == 0)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
869 {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
870 write("No methods chosen - nothing to do! Please try again after choosing one or more methods", stderr())
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
871 quit(save="no",status=2)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
872 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
873
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
874 Out_Dir = "$html_file.files_path"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
875 Input = "$input1"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
876 TreatmentName = "$treatment_name"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
877 TreatmentCols = "$Treat_cols"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
878 ControlName = "$control_name"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
879 ControlCols= "$Control_cols"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
880 org = "$input1.dbkey"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
881 if (org == "") { org = "hg19"}
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
882 fdrtype = "$fdrtype"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
883 fdrthresh = $fdrthresh
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
884 useNDF = $useNDF
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
885 fQ = $fQ # non-differential centile cutoff
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
886 myTitle = "$title"
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
887 sids = strsplit("$subjectids",',')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
888 subjects = unlist(sids)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
889 nsubj = length(subjects)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
890 TCols = as.numeric(strsplit(TreatmentCols,",")[[1]])-1
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
891 CCols = as.numeric(strsplit(ControlCols,",")[[1]])-1
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
892 cat('Got TCols=')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
893 cat(TCols)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
894 cat('; CCols=')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
895 cat(CCols)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
896 cat('\n')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
897 useCols = c(TCols,CCols)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
898 if (file.exists(Out_Dir) == F) dir.create(Out_Dir)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
899 Count_Matrix = read.table(Input,header=T,row.names=1,sep='\t') #Load tab file assume header
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
900 snames = colnames(Count_Matrix)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
901 nsamples = length(snames)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
902 if (nsubj > 0 & nsubj != nsamples) {
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
903 options("show.error.messages"=T)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
904 mess = paste('Fatal error: Supplied subject id list',paste(subjects,collapse=','),
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
905 'has length',nsubj,'but there are',nsamples,'samples',paste(snames,collapse=','))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
906 write(mess, stderr())
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
907 quit(save="no",status=4)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
908 }
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
909 if (length(subjects) != 0) {subjects = subjects[useCols]}
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
910 Count_Matrix = Count_Matrix[,useCols] ### reorder columns
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
911 rn = rownames(Count_Matrix)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
912 islib = rn %in% c('librarySize','NotInBedRegions')
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
913 LibSizes = Count_Matrix[subset(rn,islib),][1] # take first
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
914 Count_Matrix = Count_Matrix[subset(rn,! islib),]
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
915 group = c(rep(TreatmentName,length(TCols)), rep(ControlName,length(CCols)) ) #Build a group descriptor
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
916 group = factor(group, levels=c(ControlName,TreatmentName))
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
917 colnames(Count_Matrix) = paste(group,colnames(Count_Matrix),sep="_") #Relable columns
111
9f2e0ec3e826 Uploaded
fubar
parents: 110
diff changeset
918 results = edgeIt(Count_Matrix=Count_Matrix,group=group, out_edgeR=out_edgeR, out_Voom=out_Voom, out_DESeq2=out_DESeq2,
108
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
919 fdrtype='BH',mydesign=NULL,priordf=edgeR_priordf,fdrthresh=fdrthresh,outputdir='.',
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
920 myTitle=myTitle,useNDF=F,libSize=c(),filterquantile=fQ,subjects=subjects,
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
921 doDESeq2=doDESeq2,doVoom=doVoom,doCamera=doCamera,doedgeR=doedgeR,org=org,
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
922 histgmt=history_gmt,bigmt=builtin_gmt,DESeq_fitType=DESeq_fitType,robust_meth=edgeR_robust_meth)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
923 sessionInfo()
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
924 ]]>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
925 </configfile>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
926 </configfiles>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
927 <help>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
928
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
929 **What it does**
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
930
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
931 Allows short read sequence counts from controlled experiments to be analysed for differentially expressed genes.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
932 Optionally adds a term for subject if not all samples are independent or if some other factor needs to be blocked in the design.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
933
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
934 **Input**
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
935
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
936 Requires a count matrix as a tabular file. These are best made using the companion HTSeq_ based counter Galaxy wrapper
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
937 and your fave gene model to generate inputs. Each row is a genomic feature (gene or exon eg) and each column the
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
938 non-negative integer count of reads from one sample overlapping the feature.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
939 The matrix must have a header row uniquely identifying the source samples, and unique row names in
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
940 the first column. Typically the row names are gene symbols or probe ids for downstream use in GSEA and other methods.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
941
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
942 **Specifying comparisons**
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
943
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
944 This is basically dumbed down for two factors - case vs control.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
945
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
946 More complex interfaces are possible but painful at present.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
947 Probably need to specify a phenotype file to do this better.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
948 Work in progress. Send code.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
949
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
950 If you have (eg) paired samples and wish to include a term in the GLM to account for some other factor (subject in the case of paired samples),
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
951 put a comma separated list of indicators for every sample (whether modelled or not!) indicating (eg) the subject number or
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
952 A list of integers, one for each subject or an empty string if samples are all independent.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
953 If not empty, there must be exactly as many integers in the supplied integer list as there are columns (samples) in the count matrix.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
954 Integers for samples that are not in the analysis *must* be present in the string as filler even if not used.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
955
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
956 So if you have 2 pairs out of 6 samples, you need to put in unique integers for the unpaired ones
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
957 eg if you had 6 samples with the first two independent but the second and third pairs each being from independent subjects. you might use
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
958 8,9,1,1,2,2
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
959 as subject IDs to indicate two paired samples from the same subject in columns 3/4 and 5/6
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
960
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
961 **Methods available**
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
962
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
963 You can run 3 popular Bioconductor packages available for count data.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
964
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
965 edgeR - see edgeR_ for details
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
966
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
967 VOOM/limma - see limma_VOOM_ for details
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
968
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
969 DESeq2 - see DESeq2_ for details
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
970
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
971 and optionally camera in edgeR which works better if MSigDB is installed.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
972
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
973 **Outputs**
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
974
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
975 Some helpful plots and analysis results. Note that most of these are produced using R code
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
976 suggested by the excellent documentation and vignettes for the Bioconductor
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
977 packages invoked. The Tool Factory is used to automatically lay these out for you to enjoy.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
978
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
979 **Note on Voom**
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
980
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
981 The voom from limma version 3.16.6 help in R includes this from the authors - but you should read the paper to interpret this method.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
982
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
983 This function is intended to process RNA-Seq or ChIP-Seq data prior to linear modelling in limma.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
984
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
985 voom is an acronym for mean-variance modelling at the observational level.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
986 The key concern is to estimate the mean-variance relationship in the data, then use this to compute appropriate weights for each observation.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
987 Count data almost show non-trivial mean-variance relationships. Raw counts show increasing variance with increasing count size, while log-counts typically show a decreasing mean-variance trend.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
988 This function estimates the mean-variance trend for log-counts, then assigns a weight to each observation based on its predicted variance.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
989 The weights are then used in the linear modelling process to adjust for heteroscedasticity.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
990
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
991 In an experiment, a count value is observed for each tag in each sample. A tag-wise mean-variance trend is computed using lowess.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
992 The tag-wise mean is the mean log2 count with an offset of 0.5, across samples for a given tag.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
993 The tag-wise variance is the quarter-root-variance of normalized log2 counts per million values with an offset of 0.5, across samples for a given tag.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
994 Tags with zero counts across all samples are not included in the lowess fit. Optional normalization is performed using normalizeBetweenArrays.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
995 Using fitted values of log2 counts from a linear model fit by lmFit, variances from the mean-variance trend were interpolated for each observation.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
996 This was carried out by approxfun. Inverse variance weights can be used to correct for mean-variance trend in the count data.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
997
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
998
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
999 Author(s)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1000
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1001 Charity Law and Gordon Smyth
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1002
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1003 References
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1004
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1005 Law, CW (2013). Precision weights for gene expression analysis. PhD Thesis. University of Melbourne, Australia.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1006
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1007 Law, CW, Chen, Y, Shi, W, Smyth, GK (2013). Voom! Precision weights unlock linear model analysis tools for RNA-seq read counts.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1008 Technical Report 1 May 2013, Bioinformatics Division, Walter and Eliza Hall Institute of Medical Reseach, Melbourne, Australia.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1009 http://www.statsci.org/smyth/pubs/VoomPreprint.pdf
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1010
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1011 See Also
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1012
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1013 A voom case study is given in the edgeR User's Guide.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1014
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1015 vooma is a similar function but for microarrays instead of RNA-seq.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1016
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1017
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1018 ***old rant on changes to Bioconductor package variable names between versions***
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1019
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1020 The edgeR authors made a small cosmetic change in the name of one important variable (from p.value to PValue)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1021 breaking this and all other code that assumed the old name for this variable,
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1022 between edgeR2.4.4 and 2.4.6 (the version for R 2.14 as at the time of writing).
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1023 This means that all code using edgeR is sensitive to the version. I think this was a very unwise thing
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1024 to do because it wasted hours of my time to track down and will similarly cost other edgeR users dearly
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1025 when their old scripts break. This tool currently now works with 2.4.6.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1026
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1027 **Note on prior.N**
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1028
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1029 http://seqanswers.com/forums/showthread.php?t=5591 says:
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1030
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1031 *prior.n*
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1032
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1033 The value for prior.n determines the amount of smoothing of tagwise dispersions towards the common dispersion.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1034 You can think of it as like a "weight" for the common value. (It is actually the weight for the common likelihood
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1035 in the weighted likelihood equation). The larger the value for prior.n, the more smoothing, i.e. the closer your
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1036 tagwise dispersion estimates will be to the common dispersion. If you use a prior.n of 1, then that gives the
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1037 common likelihood the weight of one observation.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1038
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1039 In answer to your question, it is a good thing to squeeze the tagwise dispersions towards a common value,
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1040 or else you will be using very unreliable estimates of the dispersion. I would not recommend using the value that
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1041 you obtained from estimateSmoothing()---this is far too small and would result in virtually no moderation
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1042 (squeezing) of the tagwise dispersions. How many samples do you have in your experiment?
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1043 What is the experimental design? If you have few samples (less than 6) then I would suggest a prior.n of at least 10.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1044 If you have more samples, then the tagwise dispersion estimates will be more reliable,
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1045 so you could consider using a smaller prior.n, although I would hesitate to use a prior.n less than 5.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1046
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1047
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1048 From Bioconductor Digest, Vol 118, Issue 5, Gordon writes:
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1049
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1050 Dear Dorota,
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1051
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1052 The important settings are prior.df and trend.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1053
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1054 prior.n and prior.df are related through prior.df = prior.n * residual.df,
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1055 and your experiment has residual.df = 36 - 12 = 24. So the old setting of
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1056 prior.n=10 is equivalent for your data to prior.df = 240, a very large
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1057 value. Going the other way, the new setting of prior.df=10 is equivalent
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1058 to prior.n=10/24.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1059
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1060 To recover old results with the current software you would use
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1061
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1062 estimateTagwiseDisp(object, prior.df=240, trend="none")
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1063
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1064 To get the new default from old software you would use
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1065
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1066 estimateTagwiseDisp(object, prior.n=10/24, trend=TRUE)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1067
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1068 Actually the old trend method is equivalent to trend="loess" in the new
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1069 software. You should use plotBCV(object) to see whether a trend is
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1070 required.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1071
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1072 Note you could also use
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1073
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1074 prior.n = getPriorN(object, prior.df=10)
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1075
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1076 to map between prior.df and prior.n.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1077
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1078 ----
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1079
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1080 **Attributions**
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1081
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1082 edgeR - edgeR_
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1083
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1084 VOOM/limma - limma_VOOM_
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1085
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1086 DESeq2 - DESeq2_ for details
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1087
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1088 See above for Bioconductor package documentation for packages exposed in Galaxy by this tool and app store package.
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1089
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1090 Galaxy_ (that's what you are using right now!) for gluing everything together
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1091
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1092 Otherwise, all code and documentation comprising this tool was written by Ross Lazarus and is
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1093 licensed to you under the LGPL_ like other rgenetics artefacts
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1094
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1095 .. _LGPL: http://www.gnu.org/copyleft/lesser.html
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1096 .. _HTSeq: http://www-huber.embl.de/users/anders/HTSeq/doc/index.html
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1097 .. _edgeR: http://www.bioconductor.org/packages/release/bioc/html/edgeR.html
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1098 .. _DESeq2: http://www.bioconductor.org/packages/release/bioc/html/DESeq2.html
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1099 .. _limma_VOOM: http://www.bioconductor.org/packages/release/bioc/html/limma.html
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1100 .. _Galaxy: http://getgalaxy.org
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1101 </help>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1102
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1103 </tool>
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1104
96ebf676f6c0 consolidated from baker version. includes anscombe robust fit option. Heatmap is wrong still and the r packages won't export with all their dependencies so testing is painful
fubar
parents:
diff changeset
1105