Stupid edgeR question
0
0
Entering edit mode
7.5 years ago
s1469060 ▴ 10

Hi all

I realise this is quite a stupid question, but here goes. I've been dabbling with edgeR for my differential expression analysis, as it seems to have better sensitivity than DEseq. But the output table isn't as easy to understand. I inputed 4 samples of counts in the following order: WT, WT, Mutant, Mutant The output of summary(dt <- decideTestsDGE(et)) is

      Mutant+WT
-1        68 
0      12442
1        160

So (and here comes the stupid part) is that 68 genes downregulated in the mutant or upregulated in the mutant? It would seem logical to be 68 down, however a gene I know is down is in the 160 + values.

Sorry for the easy question- like I said I've just started this kind of analysis.

Thanks! Zoe

RNA-Seq edgeR • 2.0k views
ADD COMMENT
1
Entering edit mode

please format your table!

Mutant+WT
-1 68
0 12442
1 160

Who is up-regulated and down-regulated depends on your design matrix and (if you explicitly specified) contrasts, without those, we can't be sure.

ADD REPLY
0
Entering edit mode

It's recommended to share all your code to make sure we understand what's going on. Please be as informative as possible when asking questions.

ADD REPLY
0
Entering edit mode

Hi Sorry for the delayed reply. This is the full command line:

data_raw <- read.delim("/Volumes/igmm/hill-lab/Zoe/RNA-seq/E12.5_G2-67/DEseq/merged_counts.txt", header=T)
rownames(data_raw) <- data_raw$gene
data_raw <- data_raw[,-1]
data_rawGroups <- c("WT", "WT", "Mutant", "Mutant")
mobAnnotation <- read.delim("/Volumes/igmm/hill-lab/Zoe/RNA-seq/E11.5_G2-67_AntPos_Limb/E11.5_G2-67/DEseq/mm9_bed.txt", header=T)
cpm_log <- cpm(data_raw, log = TRUE)
median_log2_cpm <- apply(cpm_log, 1, median)
hist(median_log2_cpm)
expr_cutoff <- -1
abline(v = expr_cutoff, col = "red", lwd = 3)
sum(median_log2_cpm > expr_cutoff)
data_raw <- data_raw[median_log2_cpm > expr_cutoff, ]
cpm_log <- cpm(data_raw, log = TRUE)
group <- substr(colnames(data_raw), 1, 1)
group
y <- DGEList(counts=data_raw,group=factor(data_rawGroups))
y
y <- calcNormFactors(y)
y$samples
y <- estimateDisp(y)
sqrt(y$common.dispersion) # biological coefficient of variation
plotBCV(y)
et <- exactTest(y)
results_edgeR <- topTags(et, n = nrow(data_raw), sort.by = "none")
head(results_edgeR$table)
sum(results_edgeR$table$FDR < .05)
plotSmear(et, de.tags = rownames(results_edgeR)[results_edgeR$table$FDR < .05])
abline(h = c(-2, 2), col = "blue")
summary(dt <- decideTestsDGE(et))

Thanks, Zoe

ADD REPLY
0
Entering edit mode
data_raw <- read.delim("/Volumes/igmm/hill-lab/Zoe/RNA-seq/E12.5_G2-67/DEseq/merged_counts.txt", header=T)
rownames(data_raw) <- data_raw$gene
data_raw <- data_raw[,-1]
data_rawGroups <- c("WT", "WT", "Mutant", "Mutant")
mobAnnotation <- read.delim("/Volumes/igmm/hill-lab/Zoe/RNA-seq/E11.5_G2-67_AntPos_Limb/E11.5_G2-67/DEseq/mm9_bed.txt", header=T)

cpm_log <- cpm(data_raw, log = TRUE)
median_log2_cpm <- apply(cpm_log, 1, median)
hist(median_log2_cpm)
expr_cutoff <- -1
abline(v = expr_cutoff, col = "red", lwd = 3)
sum(median_log2_cpm > expr_cutoff)
data_raw <- data_raw[median_log2_cpm > expr_cutoff, ]
cpm_log <- cpm(data_raw, log = TRUE)
group <- substr(colnames(data_raw), 1, 1)
group


y <- DGEList(counts=data_raw,group=factor(data_rawGroups))
y
y <- calcNormFactors(y)
y$samples
y <- estimateDisp(y)
sqrt(y$common.dispersion) # biological coefficient of variation
plotBCV(y)
et <- exactTest(y)
results_edgeR <- topTags(et, n = nrow(data_raw), sort.by = "none")
head(results_edgeR$table)
sum(results_edgeR$table$FDR < .05)
plotSmear(et, de.tags = rownames(results_edgeR)[results_edgeR$table$FDR < .05])
abline(h = c(-2, 2), col = "blue")
summary(dt <- decideTestsDGE(et))
ADD REPLY
0
Entering edit mode

I added code markup to your post for increased readability. You can do this by selecting the text and clicking the 101010 button. When you compose or edit a post that button is in your toolbar, see image below:

101010 Button

ADD REPLY

Login before adding your answer.

Traffic: 1844 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6