annotate DESeq.Rmd @ 0:6f94b4b9de44 draft

planemo upload
author mingchen0919
date Tue, 27 Feb 2018 23:57:53 -0500
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
1 ---
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
2 title: 'DESeq2: Perform DESeq analysis'
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
3 output:
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
4 html_document:
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
5 number_sections: true
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
6 toc: true
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
7 theme: cosmo
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
8 highlight: tango
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
9 ---
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
10
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
11 ```{r setup, include=FALSE, warning=FALSE, message=FALSE}
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
12 knitr::opts_chunk$set(
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
13 echo = as.logical(opt$X_e),
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
14 error = TRUE
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
15 )
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
16 ```
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
17
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
18 # `DESeqDataSet` object
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
19
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
20 ```{r 'DESeqDataSet object'}
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
21 count_file_paths = strsplit(opt$X_P, ',')[[1]]
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
22 count_file_names = strsplit(opt$X_N, ',')[[1]]
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
23 sample_table = read.table(opt$X_S, header = TRUE)
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
24 row.names(sample_table) = sample_table[,2]
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
25 sample_table = sample_table[count_file_names, ]
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
26
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
27 ## copy count files into OUTPUT_DIR/counts
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
28 dir.create(paste0(OUTPUT_DIR, '/counts'), recursive = TRUE)
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
29 file_copy = file.copy(count_file_paths, paste0(OUTPUT_DIR, '/counts/', count_file_names), overwrite = TRUE)
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
30
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
31 ## DESeqDataSet object
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
32 dds = DESeqDataSetFromHTSeqCount(sampleTable = sample_table,
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
33 directory = paste0(OUTPUT_DIR, '/counts'),
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
34 design = formula(opt$X_p))
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
35 dds
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
36 ```
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
37
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
38 # Pre-filtering the dataset.
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
39
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
40 We can remove the rows that have 0 or 1 count to reduce object size and increase the calculation speed.
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
41
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
42 * Number of rows before pre-filtering
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
43 ```{r}
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
44 nrow(dds)
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
45 ```
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
46
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
47 * Number of rows after pre-filtering
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
48 ```{r}
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
49 dds = dds[rowSums(counts(dds)) > 1, ]
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
50 nrow(dds)
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
51 ```
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
52
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
53 # Peek at data {.tabset}
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
54
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
55 ## Count Data
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
56
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
57 ```{r 'count data'}
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
58 datatable(head(counts(dds), 100), style="bootstrap",
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
59 class="table-condensed", options = list(dom = 'tp', scrollX = TRUE))
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
60 ```
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
61
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
62 ## Sample Table
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
63
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
64 ```{r 'sample table'}
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
65 datatable(sample_table, style="bootstrap",
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
66 class="table-condensed", options = list(dom = 'tp', scrollX = TRUE))
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
67 ```
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
68
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
69 # Sample distance on variance stabilized data {.tabset}
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
70
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
71 ## `rlog` Stabilizing transformation
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
72
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
73 ```{r}
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
74 rld = rlog(dds, blind = FALSE)
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
75 datatable(head(assay(rld), 100), style="bootstrap",
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
76 class="table-condensed", options = list(dom = 'tp', scrollX = TRUE))
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
77 ```
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
78
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
79 ## Sample distance
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
80
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
81 ```{r}
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
82 sampleDists <- dist(t(assay(rld)))
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
83 sampleDists
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
84 ```
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
85
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
86 # Differential expression analysis
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
87
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
88 ```{r}
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
89 dds <- DESeq(dds)
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
90 ```
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
91
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
92 ```{r echo=FALSE}
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
93 # save objects except for opt.
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
94 save(list=ls()[ls() != "opt"], file=opt$X_w)
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
95 ```
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
96
6f94b4b9de44 planemo upload
mingchen0919
parents:
diff changeset
97