Install packages from BioConductor as needed:
source("http://bioconductor.org/biocLite.R")
biocLite("edgeR")
biocLite("DESeq2")
biocLite("qvalue")
#setwd("C:/Users/steibelj/OneDrive/Documents/job/ans824/2015") # Set current working directory
setwd("C:/Users/Juan Steibel/SkyDrive/Documents/job/ans824/2015") # Set current working directory
rm(list=ls()) # Remove all objects from work environment
library(edgeR)
## Loading required package: limma
library(qvalue)
library(DESeq2)
## Loading required package: S4Vectors
## Warning: package 'S4Vectors' was built under R version 3.2.2
## Loading required package: stats4
## Loading required package: BiocGenerics
## Loading required package: parallel
##
## Attaching package: 'BiocGenerics'
##
## The following objects are masked from 'package:parallel':
##
## clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
## clusterExport, clusterMap, parApply, parCapply, parLapply,
## parLapplyLB, parRapply, parSapply, parSapplyLB
##
## The following object is masked from 'package:limma':
##
## plotMA
##
## The following object is masked from 'package:stats':
##
## xtabs
##
## The following objects are masked from 'package:base':
##
## anyDuplicated, append, as.data.frame, as.vector, cbind,
## colnames, do.call, duplicated, eval, evalq, Filter, Find, get,
## intersect, is.unsorted, lapply, Map, mapply, match, mget,
## order, paste, pmax, pmax.int, pmin, pmin.int, Position, rank,
## rbind, Reduce, rep.int, rownames, sapply, setdiff, sort,
## table, tapply, union, unique, unlist, unsplit
##
## Creating a generic function for 'nchar' from package 'base' in package 'S4Vectors'
## Loading required package: IRanges
## Loading required package: GenomicRanges
## Warning: package 'GenomicRanges' was built under R version 3.2.2
## Loading required package: GenomeInfoDb
## Loading required package: Rcpp
## Warning: package 'Rcpp' was built under R version 3.2.2
## Loading required package: RcppArmadillo
## Warning: package 'RcppArmadillo' was built under R version 3.2.2
Go to the ReCount website http://bowtie-bio.sourceforge.net/recount/
1)download the dataset from bottomly in the count table format:
http://bowtie-bio.sourceforge.net/recount/countTables/bottomly_count_table.txt
2)dowload the phenotype table:
http://bowtie-bio.sourceforge.net/recount/phenotypeTables/bottomly_phenodata.txt
3) Save both files in your working directory, for instance: “C:/User/Plasmodes/Bottomly”
cts<-read.delim("bottomly_count_table.txt") #complete raw data set
pheno<-read.delim("bottomly_phenodata.txt",sep=" ") #file with descpription of the experiment
dim(cts)
## [1] 36536 22
dim(pheno)
## [1] 21 5
head(cts)
## gene SRX033480 SRX033488 SRX033481 SRX033489 SRX033482
## 1 ENSMUSG00000000001 369 744 287 769 348
## 2 ENSMUSG00000000003 0 0 0 0 0
## 3 ENSMUSG00000000028 0 1 0 1 1
## 4 ENSMUSG00000000031 0 0 0 0 0
## 5 ENSMUSG00000000037 0 1 1 5 0
## 6 ENSMUSG00000000049 0 1 0 1 0
## SRX033490 SRX033483 SRX033476 SRX033478 SRX033479 SRX033472 SRX033473
## 1 803 433 469 585 321 301 461
## 2 0 0 0 0 0 0 0
## 3 1 0 7 6 1 1 1
## 4 0 0 0 0 0 0 0
## 5 4 0 0 0 0 4 1
## 6 0 0 0 0 0 0 0
## SRX033474 SRX033475 SRX033491 SRX033484 SRX033492 SRX033485 SRX033493
## 1 309 374 781 555 820 294 758
## 2 0 0 0 0 0 0 0
## 3 1 1 1 2 1 1 4
## 4 0 0 0 0 0 0 0
## 5 1 0 1 2 1 1 1
## 6 0 0 0 0 0 0 0
## SRX033486 SRX033494
## 1 419 857
## 2 0 0
## 3 1 5
## 4 0 0
## 5 1 2
## 6 0 0
head(pheno)
## sample.id num.tech.reps strain experiment.number lane.number
## 1 SRX033480 1 C57BL/6J 6 1
## 2 SRX033488 1 C57BL/6J 7 1
## 3 SRX033481 1 C57BL/6J 6 2
## 4 SRX033489 1 C57BL/6J 7 2
## 5 SRX033482 1 C57BL/6J 6 3
## 6 SRX033490 1 C57BL/6J 7 3
rownames(cts)<-cts$gene #genes should be rownames
cts<-cts[,-1] #eliminates first columns with number or rows
dim(cts)
## [1] 36536 21
head(cts)
## SRX033480 SRX033488 SRX033481 SRX033489 SRX033482
## ENSMUSG00000000001 369 744 287 769 348
## ENSMUSG00000000003 0 0 0 0 0
## ENSMUSG00000000028 0 1 0 1 1
## ENSMUSG00000000031 0 0 0 0 0
## ENSMUSG00000000037 0 1 1 5 0
## ENSMUSG00000000049 0 1 0 1 0
## SRX033490 SRX033483 SRX033476 SRX033478 SRX033479
## ENSMUSG00000000001 803 433 469 585 321
## ENSMUSG00000000003 0 0 0 0 0
## ENSMUSG00000000028 1 0 7 6 1
## ENSMUSG00000000031 0 0 0 0 0
## ENSMUSG00000000037 4 0 0 0 0
## ENSMUSG00000000049 0 0 0 0 0
## SRX033472 SRX033473 SRX033474 SRX033475 SRX033491
## ENSMUSG00000000001 301 461 309 374 781
## ENSMUSG00000000003 0 0 0 0 0
## ENSMUSG00000000028 1 1 1 1 1
## ENSMUSG00000000031 0 0 0 0 0
## ENSMUSG00000000037 4 1 1 0 1
## ENSMUSG00000000049 0 0 0 0 0
## SRX033484 SRX033492 SRX033485 SRX033493 SRX033486
## ENSMUSG00000000001 555 820 294 758 419
## ENSMUSG00000000003 0 0 0 0 0
## ENSMUSG00000000028 2 1 1 4 1
## ENSMUSG00000000031 0 0 0 0 0
## ENSMUSG00000000037 2 1 1 1 1
## ENSMUSG00000000049 0 0 0 0 0
## SRX033494
## ENSMUSG00000000001 857
## ENSMUSG00000000003 0
## ENSMUSG00000000028 5
## ENSMUSG00000000031 0
## ENSMUSG00000000037 2
## ENSMUSG00000000049 0
head(pheno)
## sample.id num.tech.reps strain experiment.number lane.number
## 1 SRX033480 1 C57BL/6J 6 1
## 2 SRX033488 1 C57BL/6J 7 1
## 3 SRX033481 1 C57BL/6J 6 2
## 4 SRX033489 1 C57BL/6J 7 2
## 5 SRX033482 1 C57BL/6J 6 3
## 6 SRX033490 1 C57BL/6J 7 3
pheno[,1]
## [1] SRX033480 SRX033488 SRX033481 SRX033489 SRX033482 SRX033490 SRX033483
## [8] SRX033476 SRX033478 SRX033479 SRX033472 SRX033473 SRX033474 SRX033475
## [15] SRX033491 SRX033484 SRX033492 SRX033485 SRX033493 SRX033486 SRX033494
## 21 Levels: SRX033472 SRX033473 SRX033474 SRX033475 SRX033476 ... SRX033494
sum(colnames(cts)!=pheno[,1])
## [1] 0
totalcount<-rowSums(cts)
length(totalcount)
## [1] 36536
table(totalcount>0)
##
## FALSE TRUE
## 22604 13932
cnt<-cts[totalcount>0,] #eliminates genes with zero counts in all samples
dim(cnt)
## [1] 13932 21
length(totalcount)
## [1] 36536
hist(totalcount,col="lightgreen",main="")
hist(log10(totalcount+1),col="lightgreen",main="")
If genes with total count = 0 are eliminated
totalfiltercount<-rowSums(cnt)
length(totalfiltercount)
## [1] 13932
hist(log10(totalfiltercount),probability=T,col="lightgreen",main="")
prepare phenodata
head(pheno)
## sample.id num.tech.reps strain experiment.number lane.number
## 1 SRX033480 1 C57BL/6J 6 1
## 2 SRX033488 1 C57BL/6J 7 1
## 3 SRX033481 1 C57BL/6J 6 2
## 4 SRX033489 1 C57BL/6J 7 2
## 5 SRX033482 1 C57BL/6J 6 3
## 6 SRX033490 1 C57BL/6J 7 3
groups<-pheno[,3] #extract group info
groups
## [1] C57BL/6J C57BL/6J C57BL/6J C57BL/6J C57BL/6J C57BL/6J C57BL/6J
## [8] C57BL/6J C57BL/6J C57BL/6J DBA/2J DBA/2J DBA/2J DBA/2J
## [15] DBA/2J DBA/2J DBA/2J DBA/2J DBA/2J DBA/2J DBA/2J
## Levels: C57BL/6J DBA/2J
levels(groups)
## [1] "C57BL/6J" "DBA/2J"
levels(groups)<-c("B6","D2") #rename groups using levels
groups
## [1] B6 B6 B6 B6 B6 B6 B6 B6 B6 B6 D2 D2 D2 D2 D2 D2 D2 D2 D2 D2 D2
## Levels: B6 D2
design<-model.matrix(~groups) #create incidence matrix
design
## (Intercept) groupsD2
## 1 1 0
## 2 1 0
## 3 1 0
## 4 1 0
## 5 1 0
## 6 1 0
## 7 1 0
## 8 1 0
## 9 1 0
## 10 1 0
## 11 1 1
## 12 1 1
## 13 1 1
## 14 1 1
## 15 1 1
## 16 1 1
## 17 1 1
## 18 1 1
## 19 1 1
## 20 1 1
## 21 1 1
## attr(,"assign")
## [1] 0 1
## attr(,"contrasts")
## attr(,"contrasts")$groups
## [1] "contr.treatment"
design2<-model.matrix(~groups-1) #create incidence matrix
design2
## groupsB6 groupsD2
## 1 1 0
## 2 1 0
## 3 1 0
## 4 1 0
## 5 1 0
## 6 1 0
## 7 1 0
## 8 1 0
## 9 1 0
## 10 1 0
## 11 0 1
## 12 0 1
## 13 0 1
## 14 0 1
## 15 0 1
## 16 0 1
## 17 0 1
## 18 0 1
## 19 0 1
## 20 0 1
## 21 0 1
## attr(,"assign")
## [1] 1 1
## attr(,"contrasts")
## attr(,"contrasts")$groups
## [1] "contr.treatment"
head(design)
## (Intercept) groupsD2
## 1 1 0
## 2 1 0
## 3 1 0
## 4 1 0
## 5 1 0
## 6 1 0
We fit a negative binomial model and perform moderated tests
First prepare a Digital gene expression object:
dge<-DGEList(counts=cnt,group=groups,remove.zeros=T) #assemble dataset
names(dge)
## [1] "counts" "samples"
head(dge$samples)
## group lib.size norm.factors
## SRX033480 B6 3040296 1
## SRX033488 B6 6303665 1
## SRX033481 B6 2717092 1
## SRX033489 B6 6545795 1
## SRX033482 B6 3016179 1
## SRX033490 B6 7097379 1
sum(cnt[,1])
## [1] 3040296
cpm.dge<-cpm(dge) #compute counts per million
dim(cpm.dge)
## [1] 13932 21
cpm.dge[1:5,1:5]
## SRX033480 SRX033488 SRX033481 SRX033489
## ENSMUSG00000000001 121.369761 118.0265766 105.6276343 117.4800005
## ENSMUSG00000000028 0.000000 0.1586379 0.0000000 0.1527698
## ENSMUSG00000000037 0.000000 0.1586379 0.3680405 0.7638492
## ENSMUSG00000000049 0.000000 0.1586379 0.0000000 0.1527698
## ENSMUSG00000000056 6.907222 7.2973421 7.3608107 5.4997139
## SRX033482
## ENSMUSG00000000001 115.3777677
## ENSMUSG00000000028 0.3315453
## ENSMUSG00000000037 0.0000000
## ENSMUSG00000000049 0.0000000
## ENSMUSG00000000056 3.9785437
filtercpm<-rowSums(cpm.dge>1)>=9
table(filtercpm)
## filtercpm
## FALSE TRUE
## 4413 9519
dge<-dge[filtercpm,] #Filter out tags wich have fewer than one count per million in 10 or more libraries
dim(dge)
## [1] 9519 21
Some descriptive graphics
colors<-c("black","green","blue","red")[8-pheno[,4]]
labels<-groups
#check similarity between samples, color=experiment number
plotMDS(dge,main="MDS plot for Bottomly B6 and D2",labels=groups,col=colors)
#check similarity between samples
plotMDS(dge,main="MDS plot for Bottomly B6 and D2")
prepare design matrix
strain<-groups
exprmt<-as.factor(pheno[,4]) #extract flowcell as a factor
design<-model.matrix(~exprmt+strain) #create an incidence matrix
head(design)
## (Intercept) exprmt6 exprmt7 strainD2
## 1 1 1 0 0
## 2 1 0 1 0
## 3 1 1 0 0
## 4 1 0 1 0
## 5 1 1 0 0
## 6 1 0 1 0
tail(design)
## (Intercept) exprmt6 exprmt7 strainD2
## 16 1 1 0 1
## 17 1 0 1 1
## 18 1 1 0 1
## 19 1 0 1 1
## 20 1 1 0 1
## 21 1 0 1 1
Normalization and estimation of gene-specific variances
names(dge)
## [1] "counts" "samples"
class(dge)
## [1] "DGEList"
## attr(,"package")
## [1] "edgeR"
head(dge$samples)
## group lib.size norm.factors
## SRX033480 B6 3040296 1
## SRX033488 B6 6303665 1
## SRX033481 B6 2717092 1
## SRX033489 B6 6545795 1
## SRX033482 B6 3016179 1
## SRX033490 B6 7097379 1
dge<-calcNormFactors(dge)
head(dge$samples)
## group lib.size norm.factors
## SRX033480 B6 3040296 0.9796169
## SRX033488 B6 6303665 0.9823782
## SRX033481 B6 2717092 0.9945498
## SRX033489 B6 6545795 1.0089641
## SRX033482 B6 3016179 0.9731442
## SRX033490 B6 7097379 0.9952180
hist(dge$samples$norm.factors)
dge<-estimateGLMCommonDisp(dge,design,verbose=T)
## Disp = 0.01928 , BCV = 0.1389
names(dge)
## [1] "counts" "samples" "AveLogCPM"
## [4] "common.dispersion"
class(dge$AveLogCPM)
## [1] "numeric"
head(dge$AveLogCPM)
## [1] 6.734014 2.926703 2.446897 6.957275 6.872210 2.663392
length(dge$AveLogCPM)
## [1] 9519
dge$common.dispersion
## [1] 0.01928269
dge<-estimateGLMTrendedDisp(dge,design,verbose=T)
## Disp = 0.07488 , BCV = 0.2736
## Disp = 0.08533 , BCV = 0.2921
## Disp = 0.07488 , BCV = 0.2736
## Disp = 0.06629 , BCV = 0.2575
## Disp = 0.0591 , BCV = 0.2431
## Disp = 0.0562 , BCV = 0.2371
## Disp = 0.05905 , BCV = 0.243
## Disp = 0.04818 , BCV = 0.2195
## Disp = 0.0513 , BCV = 0.2265
## Disp = 0.03775 , BCV = 0.1943
## Disp = 0.03316 , BCV = 0.1821
## Disp = 0.03847 , BCV = 0.1961
## Disp = 0.03083 , BCV = 0.1756
## Disp = 0.02734 , BCV = 0.1653
## Disp = 0.03602 , BCV = 0.1898
## Disp = 0.02483 , BCV = 0.1576
## Disp = 0.0274 , BCV = 0.1655
## Disp = 0.02562 , BCV = 0.1601
## Disp = 0.02196 , BCV = 0.1482
## Disp = 0.02458 , BCV = 0.1568
## Disp = 0.02264 , BCV = 0.1505
## Disp = 0.02357 , BCV = 0.1535
## Disp = 0.02061 , BCV = 0.1436
## Disp = 0.01912 , BCV = 0.1383
## Disp = 0.02099 , BCV = 0.1449
## Disp = 0.01674 , BCV = 0.1294
## Disp = 0.01718 , BCV = 0.1311
## Disp = 0.01546 , BCV = 0.1244
## Disp = 0.0152 , BCV = 0.1233
## Disp = 0.01435 , BCV = 0.1198
## Disp = 0.01552 , BCV = 0.1246
## Disp = 0.01686 , BCV = 0.1298
## Disp = 0.01652 , BCV = 0.1285
## Disp = 0.01691 , BCV = 0.13
## Disp = 0.01345 , BCV = 0.116
## Disp = 0.01999 , BCV = 0.1414
## Disp = 0.0141 , BCV = 0.1187
## Disp = 0.01332 , BCV = 0.1154
## Disp = 0.01636 , BCV = 0.1279
names(dge)
## [1] "counts" "samples" "AveLogCPM"
## [4] "common.dispersion" "trended.dispersion" "trend.method"
## [7] "bin.dispersion" "bin.AveLogCPM"
length(dge$bin.dispersion)
## [1] 39
length(dge$bin.AveLogCPM)
## [1] 39
length(dge$trended.dispersion)
## [1] 9519
plot(dge$trended.dispersion~dge$AveLogCPM)
plot(dge$bin.dispersion~dge$bin.AveLogCPM)
dge<-estimateGLMTagwiseDisp(dge,design) # to use Tagwise, either Common or Trended should be calculated before
names(dge)
## [1] "counts" "samples" "AveLogCPM"
## [4] "common.dispersion" "trended.dispersion" "trend.method"
## [7] "bin.dispersion" "bin.AveLogCPM" "prior.df"
## [10] "span" "tagwise.dispersion"
head(dge$tagwise.dispersion)
## [1] 0.01442226 0.01223023 0.03059430 0.01999730 0.01556214 0.04617496
plot(dge$tagwise.dispersion~dge$AveLogCPM,
xlab="averge CPM",
ylab="dispersion",
pch=19)
points(dge$trended.dispersion~dge$AveLogCPM,col="red",pch=19)
abline(h=dge$common.dispersion,col="blue",lwd=2)
Model fit
fit<-glmFit(dge,design)
names(fit)
## [1] "coefficients" "fitted.values"
## [3] "deviance" "iter"
## [5] "failed" "method"
## [7] "counts" "unshrunk.coefficients"
## [9] "df.residual" "design"
## [11] "offset" "dispersion"
## [13] "prior.count" "samples"
## [15] "prior.df" "AveLogCPM"
class(fit)
## [1] "DGEGLM"
## attr(,"package")
## [1] "edgeR"
de.tagwiseGLM<-glmLRT(fit,coef=4) #test D2 vs B6
class(de.tagwiseGLM)
## [1] "DGELRT"
## attr(,"package")
## [1] "edgeR"
names(de.tagwiseGLM)
## [1] "coefficients" "fitted.values"
## [3] "deviance" "iter"
## [5] "failed" "method"
## [7] "unshrunk.coefficients" "df.residual"
## [9] "design" "offset"
## [11] "dispersion" "prior.count"
## [13] "samples" "prior.df"
## [15] "AveLogCPM" "table"
## [17] "comparison" "df.test"
head(de.tagwiseGLM$table)
## logFC logCPM LR PValue
## ENSMUSG00000000001 -0.09627830 6.734014 1.38610446 2.390641e-01
## ENSMUSG00000000056 -0.06025066 2.926703 0.21918325 6.396629e-01
## ENSMUSG00000000058 -0.21150828 2.446897 1.54943238 2.132193e-01
## ENSMUSG00000000078 0.01756544 6.957275 0.03482745 8.519577e-01
## ENSMUSG00000000088 0.46897752 6.872210 31.06223653 2.498860e-08
## ENSMUSG00000000093 -0.22158066 2.663392 1.48691771 2.226953e-01
hist(de.tagwiseGLM$table$PValue,col="green")
tags<-rownames(de.tagwiseGLM$table) #extract names of genes
Extract info about tests
?topTags
## starting httpd help server ... done
signif<-topTags(de.tagwiseGLM,
n=nrow(de.tagwiseGLM$table),
adjust.method="BH",
sort.by="PValue")
head(signif)
## Coefficient: strainD2
## logFC logCPM LR PValue FDR
## ENSMUSG00000020912 -5.142907 3.161576 473.9698 4.384463e-105 4.173570e-101
## ENSMUSG00000023236 1.419564 7.062311 410.4505 2.924604e-91 1.391965e-87
## ENSMUSG00000030532 1.521327 5.566097 408.1163 9.422412e-91 2.989731e-87
## ENSMUSG00000024248 -3.236458 3.468840 406.5361 2.080378e-90 4.950780e-87
## ENSMUSG00000015484 -1.998854 4.311462 393.4258 1.486254e-87 2.829531e-84
## ENSMUSG00000028393 1.746000 6.104436 380.3683 1.034605e-84 1.641400e-81
class(signif)
## [1] "TopTags"
## attr(,"package")
## [1] "edgeR"
names(signif)
## [1] "table" "adjust.method" "comparison" "test"
signif05<-signif$table[signif$table$FDR<0.01, ]
dim(signif05)
## [1] 1168 5
?decideTestsDGE
dexpressed05<-decideTestsDGE(de.tagwiseGLM,p.value=0.01)
class(dexpressed05)
## [1] "TestResults"
## attr(,"package")
## [1] "limma"
names(dexpressed05)
## NULL
dim(dexpressed05)
## [1] 9519 1
head(dexpressed05)
## [,1]
## [1,] 0
## [2,] 0
## [3,] 0
## [4,] 0
## [5,] 1
## [6,] 0
sum(abs(dexpressed05))
## [1] 1168
table(dexpressed05)
## dexpressed05
## -1 0 1
## 658 8351 510
head(design)
## (Intercept) exprmt6 exprmt7 strainD2
## 1 1 1 0 0
## 2 1 0 1 0
## 3 1 1 0 0
## 4 1 0 1 0
## 5 1 1 0 0
## 6 1 0 1 0
denames<-rownames(de.tagwiseGLM)[dexpressed05!=0]
denames
## [1] "ENSMUSG00000000088" "ENSMUSG00000000184" "ENSMUSG00000000276"
## [4] "ENSMUSG00000000296" "ENSMUSG00000000326" "ENSMUSG00000000340"
## [7] "ENSMUSG00000000402" "ENSMUSG00000000560" "ENSMUSG00000000792"
## [10] "ENSMUSG00000000958" "ENSMUSG00000001156" "ENSMUSG00000001248"
## [13] "ENSMUSG00000001285" "ENSMUSG00000001380" "ENSMUSG00000001473"
## [16] "ENSMUSG00000001493" "ENSMUSG00000001700" "ENSMUSG00000001773"
## [19] "ENSMUSG00000001774" "ENSMUSG00000001948" "ENSMUSG00000002308"
## [22] "ENSMUSG00000002341" "ENSMUSG00000002477" "ENSMUSG00000002847"
## [25] "ENSMUSG00000002870" "ENSMUSG00000002910" "ENSMUSG00000003039"
## [28] "ENSMUSG00000003072" "ENSMUSG00000003228" "ENSMUSG00000003355"
## [31] "ENSMUSG00000003559" "ENSMUSG00000003665" "ENSMUSG00000003863"
## [34] "ENSMUSG00000003934" "ENSMUSG00000003955" "ENSMUSG00000004032"
## [37] "ENSMUSG00000004341" "ENSMUSG00000004508" "ENSMUSG00000004562"
## [40] "ENSMUSG00000004609" "ENSMUSG00000004730" "ENSMUSG00000005057"
## [43] "ENSMUSG00000005103" "ENSMUSG00000005142" "ENSMUSG00000005442"
## [46] "ENSMUSG00000005483" "ENSMUSG00000005553" "ENSMUSG00000005677"
## [49] "ENSMUSG00000005973" "ENSMUSG00000006095" "ENSMUSG00000006154"
## [52] "ENSMUSG00000006235" "ENSMUSG00000006281" "ENSMUSG00000006342"
## [55] "ENSMUSG00000006392" "ENSMUSG00000006403" "ENSMUSG00000006412"
## [58] "ENSMUSG00000006456" "ENSMUSG00000006587" "ENSMUSG00000006711"
## [61] "ENSMUSG00000006724" "ENSMUSG00000006740" "ENSMUSG00000006782"
## [64] "ENSMUSG00000007021" "ENSMUSG00000007035" "ENSMUSG00000007603"
## [67] "ENSMUSG00000007682" "ENSMUSG00000008435" "ENSMUSG00000008999"
## [70] "ENSMUSG00000009030" "ENSMUSG00000009035" "ENSMUSG00000009075"
## [73] "ENSMUSG00000009145" "ENSMUSG00000009575" "ENSMUSG00000010048"
## [76] "ENSMUSG00000010797" "ENSMUSG00000010936" "ENSMUSG00000011884"
## [79] "ENSMUSG00000012296" "ENSMUSG00000013584" "ENSMUSG00000013989"
## [82] "ENSMUSG00000014361" "ENSMUSG00000014426" "ENSMUSG00000014776"
## [85] "ENSMUSG00000014837" "ENSMUSG00000014932" "ENSMUSG00000015120"
## [88] "ENSMUSG00000015176" "ENSMUSG00000015202" "ENSMUSG00000015305"
## [91] "ENSMUSG00000015354" "ENSMUSG00000015484" "ENSMUSG00000015568"
## [94] "ENSMUSG00000015749" "ENSMUSG00000015806" "ENSMUSG00000015843"
## [97] "ENSMUSG00000015852" "ENSMUSG00000015889" "ENSMUSG00000016018"
## [100] "ENSMUSG00000016503" "ENSMUSG00000016637" "ENSMUSG00000016757"
## [103] "ENSMUSG00000016942" "ENSMUSG00000016946" "ENSMUSG00000016984"
## [106] "ENSMUSG00000017009" "ENSMUSG00000017132" "ENSMUSG00000017167"
## [109] "ENSMUSG00000017188" "ENSMUSG00000017721" "ENSMUSG00000017943"
## [112] "ENSMUSG00000017969" "ENSMUSG00000018102" "ENSMUSG00000018166"
## [115] "ENSMUSG00000018340" "ENSMUSG00000018666" "ENSMUSG00000019158"
## [118] "ENSMUSG00000019179" "ENSMUSG00000019232" "ENSMUSG00000019235"
## [121] "ENSMUSG00000019261" "ENSMUSG00000019362" "ENSMUSG00000019433"
## [124] "ENSMUSG00000019461" "ENSMUSG00000019478" "ENSMUSG00000019737"
## [127] "ENSMUSG00000019808" "ENSMUSG00000019820" "ENSMUSG00000019865"
## [130] "ENSMUSG00000019873" "ENSMUSG00000019899" "ENSMUSG00000019943"
## [133] "ENSMUSG00000019978" "ENSMUSG00000019986" "ENSMUSG00000019996"
## [136] "ENSMUSG00000019997" "ENSMUSG00000020014" "ENSMUSG00000020019"
## [139] "ENSMUSG00000020099" "ENSMUSG00000020108" "ENSMUSG00000020131"
## [142] "ENSMUSG00000020160" "ENSMUSG00000020180" "ENSMUSG00000020196"
## [145] "ENSMUSG00000020295" "ENSMUSG00000020312" "ENSMUSG00000020358"
## [148] "ENSMUSG00000020361" "ENSMUSG00000020390" "ENSMUSG00000020411"
## [151] "ENSMUSG00000020475" "ENSMUSG00000020496" "ENSMUSG00000020513"
## [154] "ENSMUSG00000020553" "ENSMUSG00000020591" "ENSMUSG00000020629"
## [157] "ENSMUSG00000020793" "ENSMUSG00000020803" "ENSMUSG00000020890"
## [160] "ENSMUSG00000020912" "ENSMUSG00000020961" "ENSMUSG00000020962"
## [163] "ENSMUSG00000020994" "ENSMUSG00000021025" "ENSMUSG00000021033"
## [166] "ENSMUSG00000021044" "ENSMUSG00000021057" "ENSMUSG00000021070"
## [169] "ENSMUSG00000021091" "ENSMUSG00000021096" "ENSMUSG00000021143"
## [172] "ENSMUSG00000021223" "ENSMUSG00000021286" "ENSMUSG00000021367"
## [175] "ENSMUSG00000021379" "ENSMUSG00000021414" "ENSMUSG00000021420"
## [178] "ENSMUSG00000021510" "ENSMUSG00000021548" "ENSMUSG00000021591"
## [181] "ENSMUSG00000021594" "ENSMUSG00000021607" "ENSMUSG00000021636"
## [184] "ENSMUSG00000021680" "ENSMUSG00000021700" "ENSMUSG00000021702"
## [187] "ENSMUSG00000021703" "ENSMUSG00000021719" "ENSMUSG00000021747"
## [190] "ENSMUSG00000021750" "ENSMUSG00000021756" "ENSMUSG00000021773"
## [193] "ENSMUSG00000021799" "ENSMUSG00000021803" "ENSMUSG00000021806"
## [196] "ENSMUSG00000021815" "ENSMUSG00000021903" "ENSMUSG00000021904"
## [199] "ENSMUSG00000021943" "ENSMUSG00000021951" "ENSMUSG00000021969"
## [202] "ENSMUSG00000022000" "ENSMUSG00000022022" "ENSMUSG00000022040"
## [205] "ENSMUSG00000022064" "ENSMUSG00000022066" "ENSMUSG00000022070"
## [208] "ENSMUSG00000022076" "ENSMUSG00000022106" "ENSMUSG00000022112"
## [211] "ENSMUSG00000022123" "ENSMUSG00000022136" "ENSMUSG00000022146"
## [214] "ENSMUSG00000022159" "ENSMUSG00000022175" "ENSMUSG00000022177"
## [217] "ENSMUSG00000022195" "ENSMUSG00000022212" "ENSMUSG00000022220"
## [220] "ENSMUSG00000022228" "ENSMUSG00000022339" "ENSMUSG00000022361"
## [223] "ENSMUSG00000022362" "ENSMUSG00000022434" "ENSMUSG00000022436"
## [226] "ENSMUSG00000022468" "ENSMUSG00000022512" "ENSMUSG00000022514"
## [229] "ENSMUSG00000022560" "ENSMUSG00000022577" "ENSMUSG00000022620"
## [232] "ENSMUSG00000022673" "ENSMUSG00000022676" "ENSMUSG00000022677"
## [235] "ENSMUSG00000022742" "ENSMUSG00000022756" "ENSMUSG00000022849"
## [238] "ENSMUSG00000022867" "ENSMUSG00000022899" "ENSMUSG00000022935"
## [241] "ENSMUSG00000023011" "ENSMUSG00000023022" "ENSMUSG00000023236"
## [244] "ENSMUSG00000023272" "ENSMUSG00000023345" "ENSMUSG00000023348"
## [247] "ENSMUSG00000023495" "ENSMUSG00000023885" "ENSMUSG00000023908"
## [250] "ENSMUSG00000023918" "ENSMUSG00000023921" "ENSMUSG00000023935"
## [253] "ENSMUSG00000023938" "ENSMUSG00000023949" "ENSMUSG00000023961"
## [256] "ENSMUSG00000023963" "ENSMUSG00000023992" "ENSMUSG00000024011"
## [259] "ENSMUSG00000024026" "ENSMUSG00000024044" "ENSMUSG00000024049"
## [262] "ENSMUSG00000024053" "ENSMUSG00000024065" "ENSMUSG00000024076"
## [265] "ENSMUSG00000024082" "ENSMUSG00000024084" "ENSMUSG00000024114"
## [268] "ENSMUSG00000024132" "ENSMUSG00000024140" "ENSMUSG00000024174"
## [271] "ENSMUSG00000024210" "ENSMUSG00000024219" "ENSMUSG00000024227"
## [274] "ENSMUSG00000024248" "ENSMUSG00000024251" "ENSMUSG00000024312"
## [277] "ENSMUSG00000024319" "ENSMUSG00000024376" "ENSMUSG00000024381"
## [280] "ENSMUSG00000024411" "ENSMUSG00000024474" "ENSMUSG00000024486"
## [283] "ENSMUSG00000024517" "ENSMUSG00000024521" "ENSMUSG00000024526"
## [286] "ENSMUSG00000024597" "ENSMUSG00000024598" "ENSMUSG00000024661"
## [289] "ENSMUSG00000024697" "ENSMUSG00000024712" "ENSMUSG00000024735"
## [292] "ENSMUSG00000024750" "ENSMUSG00000024758" "ENSMUSG00000024795"
## [295] "ENSMUSG00000024810" "ENSMUSG00000024812" "ENSMUSG00000024827"
## [298] "ENSMUSG00000024855" "ENSMUSG00000024858" "ENSMUSG00000024878"
## [301] "ENSMUSG00000024883" "ENSMUSG00000024912" "ENSMUSG00000024966"
## [304] "ENSMUSG00000024983" "ENSMUSG00000024990" "ENSMUSG00000025027"
## [307] "ENSMUSG00000025034" "ENSMUSG00000025036" "ENSMUSG00000025066"
## [310] "ENSMUSG00000025076" "ENSMUSG00000025089" "ENSMUSG00000025133"
## [313] "ENSMUSG00000025203" "ENSMUSG00000025207" "ENSMUSG00000025217"
## [316] "ENSMUSG00000025264" "ENSMUSG00000025324" "ENSMUSG00000025355"
## [319] "ENSMUSG00000025374" "ENSMUSG00000025401" "ENSMUSG00000025421"
## [322] "ENSMUSG00000025450" "ENSMUSG00000025731" "ENSMUSG00000025823"
## [325] "ENSMUSG00000025905" "ENSMUSG00000025931" "ENSMUSG00000026003"
## [328] "ENSMUSG00000026028" "ENSMUSG00000026062" "ENSMUSG00000026074"
## [331] "ENSMUSG00000026078" "ENSMUSG00000026083" "ENSMUSG00000026158"
## [334] "ENSMUSG00000026224" "ENSMUSG00000026234" "ENSMUSG00000026255"
## [337] "ENSMUSG00000026258" "ENSMUSG00000026355" "ENSMUSG00000026356"
## [340] "ENSMUSG00000026380" "ENSMUSG00000026385" "ENSMUSG00000026393"
## [343] "ENSMUSG00000026414" "ENSMUSG00000026421" "ENSMUSG00000026442"
## [346] "ENSMUSG00000026511" "ENSMUSG00000026554" "ENSMUSG00000026563"
## [349] "ENSMUSG00000026577" "ENSMUSG00000026579" "ENSMUSG00000026585"
## [352] "ENSMUSG00000026587" "ENSMUSG00000026637" "ENSMUSG00000026655"
## [355] "ENSMUSG00000026687" "ENSMUSG00000026688" "ENSMUSG00000026697"
## [358] "ENSMUSG00000026830" "ENSMUSG00000026879" "ENSMUSG00000027079"
## [361] "ENSMUSG00000027107" "ENSMUSG00000027187" "ENSMUSG00000027199"
## [364] "ENSMUSG00000027253" "ENSMUSG00000027285" "ENSMUSG00000027315"
## [367] "ENSMUSG00000027358" "ENSMUSG00000027375" "ENSMUSG00000027377"
## [370] "ENSMUSG00000027386" "ENSMUSG00000027387" "ENSMUSG00000027424"
## [373] "ENSMUSG00000027430" "ENSMUSG00000027531" "ENSMUSG00000027562"
## [376] "ENSMUSG00000027568" "ENSMUSG00000027577" "ENSMUSG00000027636"
## [379] "ENSMUSG00000027706" "ENSMUSG00000027737" "ENSMUSG00000027793"
## [382] "ENSMUSG00000027852" "ENSMUSG00000027855" "ENSMUSG00000027858"
## [385] "ENSMUSG00000027864" "ENSMUSG00000027962" "ENSMUSG00000027983"
## [388] "ENSMUSG00000028024" "ENSMUSG00000028031" "ENSMUSG00000028032"
## [391] "ENSMUSG00000028068" "ENSMUSG00000028128" "ENSMUSG00000028158"
## [394] "ENSMUSG00000028172" "ENSMUSG00000028174" "ENSMUSG00000028218"
## [397] "ENSMUSG00000028331" "ENSMUSG00000028393" "ENSMUSG00000028447"
## [400] "ENSMUSG00000028550" "ENSMUSG00000028575" "ENSMUSG00000028583"
## [403] "ENSMUSG00000028602" "ENSMUSG00000028619" "ENSMUSG00000028675"
## [406] "ENSMUSG00000028747" "ENSMUSG00000028758" "ENSMUSG00000028779"
## [409] "ENSMUSG00000028780" "ENSMUSG00000028838" "ENSMUSG00000028843"
## [412] "ENSMUSG00000028865" "ENSMUSG00000028907" "ENSMUSG00000028971"
## [415] "ENSMUSG00000028979" "ENSMUSG00000028989" "ENSMUSG00000029090"
## [418] "ENSMUSG00000029153" "ENSMUSG00000029163" "ENSMUSG00000029169"
## [421] "ENSMUSG00000029245" "ENSMUSG00000029298" "ENSMUSG00000029309"
## [424] "ENSMUSG00000029319" "ENSMUSG00000029333" "ENSMUSG00000029343"
## [427] "ENSMUSG00000029381" "ENSMUSG00000029419" "ENSMUSG00000029422"
## [430] "ENSMUSG00000029440" "ENSMUSG00000029484" "ENSMUSG00000029490"
## [433] "ENSMUSG00000029547" "ENSMUSG00000029625" "ENSMUSG00000029701"
## [436] "ENSMUSG00000029716" "ENSMUSG00000029729" "ENSMUSG00000029765"
## [439] "ENSMUSG00000029797" "ENSMUSG00000029816" "ENSMUSG00000029821"
## [442] "ENSMUSG00000029838" "ENSMUSG00000029860" "ENSMUSG00000030004"
## [445] "ENSMUSG00000030075" "ENSMUSG00000030101" "ENSMUSG00000030104"
## [448] "ENSMUSG00000030134" "ENSMUSG00000030168" "ENSMUSG00000030189"
## [451] "ENSMUSG00000030220" "ENSMUSG00000030223" "ENSMUSG00000030255"
## [454] "ENSMUSG00000030397" "ENSMUSG00000030406" "ENSMUSG00000030513"
## [457] "ENSMUSG00000030532" "ENSMUSG00000030536" "ENSMUSG00000030579"
## [460] "ENSMUSG00000030600" "ENSMUSG00000030605" "ENSMUSG00000030606"
## [463] "ENSMUSG00000030616" "ENSMUSG00000030653" "ENSMUSG00000030704"
## [466] "ENSMUSG00000030718" "ENSMUSG00000030747" "ENSMUSG00000030754"
## [469] "ENSMUSG00000030835" "ENSMUSG00000030878" "ENSMUSG00000030905"
## [472] "ENSMUSG00000030917" "ENSMUSG00000030942" "ENSMUSG00000030994"
## [475] "ENSMUSG00000031004" "ENSMUSG00000031070" "ENSMUSG00000031176"
## [478] "ENSMUSG00000031227" "ENSMUSG00000031245" "ENSMUSG00000031342"
## [481] "ENSMUSG00000031483" "ENSMUSG00000031485" "ENSMUSG00000031492"
## [484] "ENSMUSG00000031534" "ENSMUSG00000031538" "ENSMUSG00000031577"
## [487] "ENSMUSG00000031584" "ENSMUSG00000031610" "ENSMUSG00000031613"
## [490] "ENSMUSG00000031661" "ENSMUSG00000031714" "ENSMUSG00000031775"
## [493] "ENSMUSG00000031780" "ENSMUSG00000031787" "ENSMUSG00000031790"
## [496] "ENSMUSG00000031803" "ENSMUSG00000031805" "ENSMUSG00000031858"
## [499] "ENSMUSG00000031924" "ENSMUSG00000031970" "ENSMUSG00000031972"
## [502] "ENSMUSG00000031974" "ENSMUSG00000031990" "ENSMUSG00000032018"
## [505] "ENSMUSG00000032060" "ENSMUSG00000032066" "ENSMUSG00000032091"
## [508] "ENSMUSG00000032113" "ENSMUSG00000032123" "ENSMUSG00000032125"
## [511] "ENSMUSG00000032135" "ENSMUSG00000032182" "ENSMUSG00000032202"
## [514] "ENSMUSG00000032220" "ENSMUSG00000032262" "ENSMUSG00000032264"
## [517] "ENSMUSG00000032320" "ENSMUSG00000032323" "ENSMUSG00000032340"
## [520] "ENSMUSG00000032343" "ENSMUSG00000032377" "ENSMUSG00000032398"
## [523] "ENSMUSG00000032403" "ENSMUSG00000032425" "ENSMUSG00000032463"
## [526] "ENSMUSG00000032470" "ENSMUSG00000032479" "ENSMUSG00000032487"
## [529] "ENSMUSG00000032517" "ENSMUSG00000032554" "ENSMUSG00000032556"
## [532] "ENSMUSG00000032565" "ENSMUSG00000032584" "ENSMUSG00000032586"
## [535] "ENSMUSG00000032667" "ENSMUSG00000032673" "ENSMUSG00000032679"
## [538] "ENSMUSG00000032807" "ENSMUSG00000032854" "ENSMUSG00000032942"
## [541] "ENSMUSG00000032968" "ENSMUSG00000033006" "ENSMUSG00000033033"
## [544] "ENSMUSG00000033039" "ENSMUSG00000033063" "ENSMUSG00000033170"
## [547] "ENSMUSG00000033177" "ENSMUSG00000033186" "ENSMUSG00000033268"
## [550] "ENSMUSG00000033417" "ENSMUSG00000033429" "ENSMUSG00000033454"
## [553] "ENSMUSG00000033458" "ENSMUSG00000033488" "ENSMUSG00000033544"
## [556] "ENSMUSG00000033557" "ENSMUSG00000033585" "ENSMUSG00000033793"
## [559] "ENSMUSG00000033813" "ENSMUSG00000033826" "ENSMUSG00000033863"
## [562] "ENSMUSG00000033931" "ENSMUSG00000033960" "ENSMUSG00000034111"
## [565] "ENSMUSG00000034161" "ENSMUSG00000034205" "ENSMUSG00000034226"
## [568] "ENSMUSG00000034227" "ENSMUSG00000034248" "ENSMUSG00000034254"
## [571] "ENSMUSG00000034282" "ENSMUSG00000034285" "ENSMUSG00000034413"
## [574] "ENSMUSG00000034453" "ENSMUSG00000034459" "ENSMUSG00000034463"
## [577] "ENSMUSG00000034488" "ENSMUSG00000034602" "ENSMUSG00000034616"
## [580] "ENSMUSG00000034617" "ENSMUSG00000034639" "ENSMUSG00000034653"
## [583] "ENSMUSG00000034684" "ENSMUSG00000034723" "ENSMUSG00000034768"
## [586] "ENSMUSG00000034807" "ENSMUSG00000034845" "ENSMUSG00000034875"
## [589] "ENSMUSG00000034936" "ENSMUSG00000035048" "ENSMUSG00000035227"
## [592] "ENSMUSG00000035237" "ENSMUSG00000035238" "ENSMUSG00000035239"
## [595] "ENSMUSG00000035274" "ENSMUSG00000035283" "ENSMUSG00000035349"
## [598] "ENSMUSG00000035390" "ENSMUSG00000035431" "ENSMUSG00000035674"
## [601] "ENSMUSG00000035686" "ENSMUSG00000035754" "ENSMUSG00000035775"
## [604] "ENSMUSG00000035781" "ENSMUSG00000035790" "ENSMUSG00000035849"
## [607] "ENSMUSG00000035863" "ENSMUSG00000035868" "ENSMUSG00000035964"
## [610] "ENSMUSG00000036098" "ENSMUSG00000036138" "ENSMUSG00000036181"
## [613] "ENSMUSG00000036256" "ENSMUSG00000036295" "ENSMUSG00000036333"
## [616] "ENSMUSG00000036339" "ENSMUSG00000036422" "ENSMUSG00000036430"
## [619] "ENSMUSG00000036473" "ENSMUSG00000036492" "ENSMUSG00000036503"
## [622] "ENSMUSG00000036570" "ENSMUSG00000036634" "ENSMUSG00000036672"
## [625] "ENSMUSG00000036712" "ENSMUSG00000036854" "ENSMUSG00000036860"
## [628] "ENSMUSG00000036887" "ENSMUSG00000036896" "ENSMUSG00000036905"
## [631] "ENSMUSG00000036907" "ENSMUSG00000036934" "ENSMUSG00000036941"
## [634] "ENSMUSG00000036964" "ENSMUSG00000037001" "ENSMUSG00000037010"
## [637] "ENSMUSG00000037071" "ENSMUSG00000037103" "ENSMUSG00000037151"
## [640] "ENSMUSG00000037196" "ENSMUSG00000037206" "ENSMUSG00000037242"
## [643] "ENSMUSG00000037353" "ENSMUSG00000037358" "ENSMUSG00000037363"
## [646] "ENSMUSG00000037461" "ENSMUSG00000037474" "ENSMUSG00000037493"
## [649] "ENSMUSG00000037519" "ENSMUSG00000037536" "ENSMUSG00000037578"
## [652] "ENSMUSG00000037594" "ENSMUSG00000037624" "ENSMUSG00000037625"
## [655] "ENSMUSG00000037649" "ENSMUSG00000037683" "ENSMUSG00000037762"
## [658] "ENSMUSG00000037787" "ENSMUSG00000037813" "ENSMUSG00000037815"
## [661] "ENSMUSG00000037852" "ENSMUSG00000037855" "ENSMUSG00000037872"
## [664] "ENSMUSG00000037971" "ENSMUSG00000038020" "ENSMUSG00000038028"
## [667] "ENSMUSG00000038059" "ENSMUSG00000038086" "ENSMUSG00000038095"
## [670] "ENSMUSG00000038156" "ENSMUSG00000038170" "ENSMUSG00000038233"
## [673] "ENSMUSG00000038252" "ENSMUSG00000038274" "ENSMUSG00000038276"
## [676] "ENSMUSG00000038349" "ENSMUSG00000038370" "ENSMUSG00000038390"
## [679] "ENSMUSG00000038422" "ENSMUSG00000038425" "ENSMUSG00000038552"
## [682] "ENSMUSG00000038605" "ENSMUSG00000038622" "ENSMUSG00000038760"
## [685] "ENSMUSG00000038811" "ENSMUSG00000038838" "ENSMUSG00000038844"
## [688] "ENSMUSG00000039065" "ENSMUSG00000039086" "ENSMUSG00000039126"
## [691] "ENSMUSG00000039194" "ENSMUSG00000039195" "ENSMUSG00000039218"
## [694] "ENSMUSG00000039234" "ENSMUSG00000039246" "ENSMUSG00000039252"
## [697] "ENSMUSG00000039323" "ENSMUSG00000039328" "ENSMUSG00000039452"
## [700] "ENSMUSG00000039474" "ENSMUSG00000039529" "ENSMUSG00000039533"
## [703] "ENSMUSG00000039594" "ENSMUSG00000039601" "ENSMUSG00000039607"
## [706] "ENSMUSG00000039634" "ENSMUSG00000039770" "ENSMUSG00000040035"
## [709] "ENSMUSG00000040113" "ENSMUSG00000040125" "ENSMUSG00000040136"
## [712] "ENSMUSG00000040147" "ENSMUSG00000040298" "ENSMUSG00000040312"
## [715] "ENSMUSG00000040373" "ENSMUSG00000040424" "ENSMUSG00000040441"
## [718] "ENSMUSG00000040490" "ENSMUSG00000040552" "ENSMUSG00000040563"
## [721] "ENSMUSG00000040629" "ENSMUSG00000040680" "ENSMUSG00000040703"
## [724] "ENSMUSG00000040714" "ENSMUSG00000040767" "ENSMUSG00000040794"
## [727] "ENSMUSG00000040841" "ENSMUSG00000040848" "ENSMUSG00000040852"
## [730] "ENSMUSG00000040856" "ENSMUSG00000040867" "ENSMUSG00000040877"
## [733] "ENSMUSG00000040899" "ENSMUSG00000040936" "ENSMUSG00000040987"
## [736] "ENSMUSG00000041096" "ENSMUSG00000041219" "ENSMUSG00000041263"
## [739] "ENSMUSG00000041297" "ENSMUSG00000041354" "ENSMUSG00000041362"
## [742] "ENSMUSG00000041377" "ENSMUSG00000041445" "ENSMUSG00000041460"
## [745] "ENSMUSG00000041548" "ENSMUSG00000041596" "ENSMUSG00000041653"
## [748] "ENSMUSG00000041733" "ENSMUSG00000041748" "ENSMUSG00000041782"
## [751] "ENSMUSG00000041907" "ENSMUSG00000041959" "ENSMUSG00000041992"
## [754] "ENSMUSG00000042073" "ENSMUSG00000042115" "ENSMUSG00000042178"
## [757] "ENSMUSG00000042210" "ENSMUSG00000042293" "ENSMUSG00000042312"
## [760] "ENSMUSG00000042406" "ENSMUSG00000042506" "ENSMUSG00000042632"
## [763] "ENSMUSG00000042638" "ENSMUSG00000042644" "ENSMUSG00000042680"
## [766] "ENSMUSG00000042734" "ENSMUSG00000042750" "ENSMUSG00000042770"
## [769] "ENSMUSG00000042797" "ENSMUSG00000042826" "ENSMUSG00000042943"
## [772] "ENSMUSG00000042962" "ENSMUSG00000043122" "ENSMUSG00000043190"
## [775] "ENSMUSG00000043298" "ENSMUSG00000043445" "ENSMUSG00000043501"
## [778] "ENSMUSG00000043542" "ENSMUSG00000043631" "ENSMUSG00000043668"
## [781] "ENSMUSG00000043719" "ENSMUSG00000043773" "ENSMUSG00000043999"
## [784] "ENSMUSG00000044018" "ENSMUSG00000044022" "ENSMUSG00000044024"
## [787] "ENSMUSG00000044030" "ENSMUSG00000044052" "ENSMUSG00000044068"
## [790] "ENSMUSG00000044229" "ENSMUSG00000044231" "ENSMUSG00000044338"
## [793] "ENSMUSG00000044339" "ENSMUSG00000044349" "ENSMUSG00000044364"
## [796] "ENSMUSG00000044433" "ENSMUSG00000044501" "ENSMUSG00000044519"
## [799] "ENSMUSG00000044534" "ENSMUSG00000044562" "ENSMUSG00000044573"
## [802] "ENSMUSG00000044617" "ENSMUSG00000044676" "ENSMUSG00000044708"
## [805] "ENSMUSG00000044847" "ENSMUSG00000044881" "ENSMUSG00000044906"
## [808] "ENSMUSG00000045004" "ENSMUSG00000045053" "ENSMUSG00000045087"
## [811] "ENSMUSG00000045092" "ENSMUSG00000045348" "ENSMUSG00000045498"
## [814] "ENSMUSG00000045515" "ENSMUSG00000045551" "ENSMUSG00000045625"
## [817] "ENSMUSG00000045657" "ENSMUSG00000045659" "ENSMUSG00000045813"
## [820] "ENSMUSG00000045871" "ENSMUSG00000045876" "ENSMUSG00000045954"
## [823] "ENSMUSG00000045968" "ENSMUSG00000045994" "ENSMUSG00000046056"
## [826] "ENSMUSG00000046101" "ENSMUSG00000046152" "ENSMUSG00000046192"
## [829] "ENSMUSG00000046229" "ENSMUSG00000046338" "ENSMUSG00000046380"
## [832] "ENSMUSG00000046402" "ENSMUSG00000046480" "ENSMUSG00000046618"
## [835] "ENSMUSG00000046719" "ENSMUSG00000046792" "ENSMUSG00000046805"
## [838] "ENSMUSG00000046818" "ENSMUSG00000046991" "ENSMUSG00000047013"
## [841] "ENSMUSG00000047044" "ENSMUSG00000047085" "ENSMUSG00000047153"
## [844] "ENSMUSG00000047180" "ENSMUSG00000047228" "ENSMUSG00000047259"
## [847] "ENSMUSG00000047281" "ENSMUSG00000047361" "ENSMUSG00000047388"
## [850] "ENSMUSG00000047414" "ENSMUSG00000047419" "ENSMUSG00000047428"
## [853] "ENSMUSG00000047658" "ENSMUSG00000047797" "ENSMUSG00000047828"
## [856] "ENSMUSG00000048096" "ENSMUSG00000048163" "ENSMUSG00000048191"
## [859] "ENSMUSG00000048376" "ENSMUSG00000048458" "ENSMUSG00000048544"
## [862] "ENSMUSG00000048546" "ENSMUSG00000048572" "ENSMUSG00000048612"
## [865] "ENSMUSG00000048617" "ENSMUSG00000048677" "ENSMUSG00000048826"
## [868] "ENSMUSG00000048827" "ENSMUSG00000048856" "ENSMUSG00000048899"
## [871] "ENSMUSG00000048939" "ENSMUSG00000048960" "ENSMUSG00000048988"
## [874] "ENSMUSG00000049086" "ENSMUSG00000049112" "ENSMUSG00000049130"
## [877] "ENSMUSG00000049134" "ENSMUSG00000049281" "ENSMUSG00000049422"
## [880] "ENSMUSG00000049551" "ENSMUSG00000049553" "ENSMUSG00000049562"
## [883] "ENSMUSG00000049608" "ENSMUSG00000050063" "ENSMUSG00000050103"
## [886] "ENSMUSG00000050121" "ENSMUSG00000050138" "ENSMUSG00000050141"
## [889] "ENSMUSG00000050211" "ENSMUSG00000050549" "ENSMUSG00000050824"
## [892] "ENSMUSG00000050873" "ENSMUSG00000051048" "ENSMUSG00000051107"
## [895] "ENSMUSG00000051111" "ENSMUSG00000051113" "ENSMUSG00000051146"
## [898] "ENSMUSG00000051246" "ENSMUSG00000051341" "ENSMUSG00000051391"
## [901] "ENSMUSG00000051486" "ENSMUSG00000051498" "ENSMUSG00000051578"
## [904] "ENSMUSG00000051599" "ENSMUSG00000051617" "ENSMUSG00000051663"
## [907] "ENSMUSG00000051678" "ENSMUSG00000052026" "ENSMUSG00000052076"
## [910] "ENSMUSG00000052135" "ENSMUSG00000052415" "ENSMUSG00000052430"
## [913] "ENSMUSG00000052609" "ENSMUSG00000052714" "ENSMUSG00000052759"
## [916] "ENSMUSG00000052833" "ENSMUSG00000052848" "ENSMUSG00000052962"
## [919] "ENSMUSG00000053012" "ENSMUSG00000053198" "ENSMUSG00000053226"
## [922] "ENSMUSG00000053475" "ENSMUSG00000053552" "ENSMUSG00000053644"
## [925] "ENSMUSG00000053846" "ENSMUSG00000053935" "ENSMUSG00000053985"
## [928] "ENSMUSG00000054003" "ENSMUSG00000054091" "ENSMUSG00000054123"
## [931] "ENSMUSG00000054178" "ENSMUSG00000054199" "ENSMUSG00000054354"
## [934] "ENSMUSG00000054426" "ENSMUSG00000054474" "ENSMUSG00000054493"
## [937] "ENSMUSG00000054579" "ENSMUSG00000055148" "ENSMUSG00000055150"
## [940] "ENSMUSG00000055240" "ENSMUSG00000055313" "ENSMUSG00000055489"
## [943] "ENSMUSG00000055538" "ENSMUSG00000055560" "ENSMUSG00000055629"
## [946] "ENSMUSG00000055707" "ENSMUSG00000055745" "ENSMUSG00000055839"
## [949] "ENSMUSG00000055912" "ENSMUSG00000055917" "ENSMUSG00000055926"
## [952] "ENSMUSG00000055945" "ENSMUSG00000055976" "ENSMUSG00000056014"
## [955] "ENSMUSG00000056116" "ENSMUSG00000056121" "ENSMUSG00000056155"
## [958] "ENSMUSG00000056216" "ENSMUSG00000056258" "ENSMUSG00000056391"
## [961] "ENSMUSG00000056429" "ENSMUSG00000056492" "ENSMUSG00000056508"
## [964] "ENSMUSG00000056553" "ENSMUSG00000056592" "ENSMUSG00000056608"
## [967] "ENSMUSG00000056629" "ENSMUSG00000056656" "ENSMUSG00000056771"
## [970] "ENSMUSG00000056895" "ENSMUSG00000056966" "ENSMUSG00000057230"
## [973] "ENSMUSG00000057337" "ENSMUSG00000057667" "ENSMUSG00000057894"
## [976] "ENSMUSG00000057899" "ENSMUSG00000057924" "ENSMUSG00000058099"
## [979] "ENSMUSG00000058126" "ENSMUSG00000058230" "ENSMUSG00000058246"
## [982] "ENSMUSG00000058325" "ENSMUSG00000058396" "ENSMUSG00000058503"
## [985] "ENSMUSG00000058587" "ENSMUSG00000058761" "ENSMUSG00000059355"
## [988] "ENSMUSG00000059423" "ENSMUSG00000059498" "ENSMUSG00000059554"
## [991] "ENSMUSG00000059674" "ENSMUSG00000059824" "ENSMUSG00000059842"
## [994] "ENSMUSG00000059970" "ENSMUSG00000060147" "ENSMUSG00000060176"
## [997] "ENSMUSG00000060224" "ENSMUSG00000060284" "ENSMUSG00000060424"
## [1000] "ENSMUSG00000060466" "ENSMUSG00000060657" "ENSMUSG00000060675"
## [1003] "ENSMUSG00000060681" "ENSMUSG00000060716" "ENSMUSG00000060802"
## [1006] "ENSMUSG00000060992" "ENSMUSG00000061086" "ENSMUSG00000061232"
## [1009] "ENSMUSG00000061755" "ENSMUSG00000061808" "ENSMUSG00000061815"
## [1012] "ENSMUSG00000062012" "ENSMUSG00000062014" "ENSMUSG00000062078"
## [1015] "ENSMUSG00000062151" "ENSMUSG00000062169" "ENSMUSG00000062252"
## [1018] "ENSMUSG00000062260" "ENSMUSG00000062309" "ENSMUSG00000062352"
## [1021] "ENSMUSG00000062661" "ENSMUSG00000062691" "ENSMUSG00000062760"
## [1024] "ENSMUSG00000062822" "ENSMUSG00000062963" "ENSMUSG00000063011"
## [1027] "ENSMUSG00000063253" "ENSMUSG00000063296" "ENSMUSG00000063531"
## [1030] "ENSMUSG00000063687" "ENSMUSG00000063698" "ENSMUSG00000063897"
## [1033] "ENSMUSG00000063904" "ENSMUSG00000064023" "ENSMUSG00000064036"
## [1036] "ENSMUSG00000064125" "ENSMUSG00000064262" "ENSMUSG00000064307"
## [1039] "ENSMUSG00000064325" "ENSMUSG00000064351" "ENSMUSG00000064367"
## [1042] "ENSMUSG00000064368" "ENSMUSG00000064370" "ENSMUSG00000065990"
## [1045] "ENSMUSG00000066197" "ENSMUSG00000066510" "ENSMUSG00000066800"
## [1048] "ENSMUSG00000067279" "ENSMUSG00000067578" "ENSMUSG00000067594"
## [1051] "ENSMUSG00000067928" "ENSMUSG00000068184" "ENSMUSG00000068267"
## [1054] "ENSMUSG00000068299" "ENSMUSG00000068758" "ENSMUSG00000068921"
## [1057] "ENSMUSG00000069041" "ENSMUSG00000069072" "ENSMUSG00000069588"
## [1060] "ENSMUSG00000069763" "ENSMUSG00000069874" "ENSMUSG00000069911"
## [1063] "ENSMUSG00000070003" "ENSMUSG00000070336" "ENSMUSG00000070357"
## [1066] "ENSMUSG00000070427" "ENSMUSG00000070436" "ENSMUSG00000070498"
## [1069] "ENSMUSG00000070561" "ENSMUSG00000070695" "ENSMUSG00000070697"
## [1072] "ENSMUSG00000070858" "ENSMUSG00000070923" "ENSMUSG00000070942"
## [1075] "ENSMUSG00000071076" "ENSMUSG00000071083" "ENSMUSG00000071180"
## [1078] "ENSMUSG00000071291" "ENSMUSG00000071342" "ENSMUSG00000071379"
## [1081] "ENSMUSG00000071451" "ENSMUSG00000071604" "ENSMUSG00000071658"
## [1084] "ENSMUSG00000071659" "ENSMUSG00000071984" "ENSMUSG00000072115"
## [1087] "ENSMUSG00000072572" "ENSMUSG00000072582" "ENSMUSG00000072620"
## [1090] "ENSMUSG00000072647" "ENSMUSG00000072808" "ENSMUSG00000072899"
## [1093] "ENSMUSG00000072919" "ENSMUSG00000072960" "ENSMUSG00000072982"
## [1096] "ENSMUSG00000073209" "ENSMUSG00000073411" "ENSMUSG00000073416"
## [1099] "ENSMUSG00000073422" "ENSMUSG00000073423" "ENSMUSG00000073424"
## [1102] "ENSMUSG00000073437" "ENSMUSG00000073476" "ENSMUSG00000073532"
## [1105] "ENSMUSG00000073591" "ENSMUSG00000073617" "ENSMUSG00000073673"
## [1108] "ENSMUSG00000073680" "ENSMUSG00000073859" "ENSMUSG00000073906"
## [1111] "ENSMUSG00000073940" "ENSMUSG00000073982" "ENSMUSG00000074004"
## [1114] "ENSMUSG00000074064" "ENSMUSG00000074252" "ENSMUSG00000074283"
## [1117] "ENSMUSG00000074361" "ENSMUSG00000074384" "ENSMUSG00000074408"
## [1120] "ENSMUSG00000074517" "ENSMUSG00000074582" "ENSMUSG00000074634"
## [1123] "ENSMUSG00000074657" "ENSMUSG00000074682" "ENSMUSG00000074704"
## [1126] "ENSMUSG00000074715" "ENSMUSG00000074732" "ENSMUSG00000074738"
## [1129] "ENSMUSG00000074785" "ENSMUSG00000074829" "ENSMUSG00000074917"
## [1132] "ENSMUSG00000075536" "ENSMUSG00000076439" "ENSMUSG00000078129"
## [1135] "ENSMUSG00000078161" "ENSMUSG00000078188" "ENSMUSG00000078201"
## [1138] "ENSMUSG00000078235" "ENSMUSG00000078433" "ENSMUSG00000078453"
## [1141] "ENSMUSG00000078485" "ENSMUSG00000078486" "ENSMUSG00000078536"
## [1144] "ENSMUSG00000078552" "ENSMUSG00000078570" "ENSMUSG00000078584"
## [1147] "ENSMUSG00000078633" "ENSMUSG00000078651" "ENSMUSG00000078767"
## [1150] "ENSMUSG00000078853" "ENSMUSG00000078958" "ENSMUSG00000078995"
## [1153] "ENSMUSG00000079051" "ENSMUSG00000079077" "ENSMUSG00000079167"
## [1156] "ENSMUSG00000079227" "ENSMUSG00000079259" "ENSMUSG00000079414"
## [1159] "ENSMUSG00000079469" "ENSMUSG00000079470" "ENSMUSG00000079494"
## [1162] "ENSMUSG00000079658" "ENSMUSG00000079662" "ENSMUSG00000079714"
## [1165] "ENSMUSG00000083282" "ENSMUSG00000089629" "ENSMUSG00000089738"
## [1168] "ENSMUSG00000090223"
plotSmear(de.tagwiseGLM, de.tags=denames)
extract relevant values using some native R functions
qv<-qvalue(de.tagwiseGLM$table$PValue) #calculate qvalues
result<-cbind(de.tagwiseGLM$table$logFC,qv$qvalues,qv$pvalue)
head(result)
## [,1] [,2] [,3]
## [1,] -0.09627830 2.346059e-01 2.390641e-01
## [2,] -0.06025066 4.217009e-01 6.396629e-01
## [3,] -0.21150828 2.188487e-01 2.132193e-01
## [4,] 0.01756544 4.913206e-01 8.519577e-01
## [5,] 0.46897752 4.353976e-07 2.498860e-08
## [6,] -0.22158066 2.246954e-01 2.226953e-01
rownames(result)<-tags
colnames(result)<-c("logFC","qvalues","pvalues")
head(result)
## logFC qvalues pvalues
## ENSMUSG00000000001 -0.09627830 2.346059e-01 2.390641e-01
## ENSMUSG00000000056 -0.06025066 4.217009e-01 6.396629e-01
## ENSMUSG00000000058 -0.21150828 2.188487e-01 2.132193e-01
## ENSMUSG00000000078 0.01756544 4.913206e-01 8.519577e-01
## ENSMUSG00000000088 0.46897752 4.353976e-07 2.498860e-08
## ENSMUSG00000000093 -0.22158066 2.246954e-01 2.226953e-01
plot(signif$table[,1],-log10(signif$table[,4]),pch=19,cex=.5,col=c("black","red")[(signif$table[,5]<0.01)+1],
xlab="log-count",ylab="log-pvalue")
plot(signif$table[,1],signif$table[,2],pch=19,cex=.5,col=c("black","red")[(signif$table[,5]<0.01)+1],
xlab="log-FC",ylab="log-CPM")
Prepare the data, create DESeq object.
colData<-DataFrame(strain,exprmt)
class(colData)
## [1] "DataFrame"
## attr(,"package")
## [1] "S4Vectors"
head(colData)
## DataFrame with 6 rows and 2 columns
## strain exprmt
## <factor> <factor>
## 1 B6 6
## 2 B6 7
## 3 B6 6
## 4 B6 7
## 5 B6 6
## 6 B6 7
dds <- DESeqDataSetFromMatrix(countData = cnt[rowSums(cpm.dge>1)>=9,],
colData = colData,
design = formula(~ strain+exprmt))
class(dds)
## [1] "DESeqDataSet"
## attr(,"package")
## [1] "DESeq2"
names(dds)
## NULL
str(dds)
## Formal class 'DESeqDataSet' [package "DESeq2"] with 6 slots
## ..@ design :Class 'formula' length 2 ~strain + exprmt
## .. .. ..- attr(*, ".Environment")=<environment: R_GlobalEnv>
## ..@ dispersionFunction:function ()
## ..@ exptData :Formal class 'SimpleList' [package "S4Vectors"] with 4 slots
## .. .. ..@ listData : list()
## .. .. ..@ elementType : chr "ANY"
## .. .. ..@ elementMetadata: NULL
## .. .. ..@ metadata : list()
## ..@ rowData :Formal class 'GRangesList' [package "GenomicRanges"] with 5 slots
## .. .. ..@ unlistData :Formal class 'GRanges' [package "GenomicRanges"] with 6 slots
## .. .. .. .. ..@ seqnames :Formal class 'Rle' [package "S4Vectors"] with 4 slots
## .. .. .. .. .. .. ..@ values : Factor w/ 0 levels:
## .. .. .. .. .. .. ..@ lengths : int(0)
## .. .. .. .. .. .. ..@ elementMetadata: NULL
## .. .. .. .. .. .. ..@ metadata : list()
## .. .. .. .. ..@ ranges :Formal class 'IRanges' [package "IRanges"] with 6 slots
## .. .. .. .. .. .. ..@ start : int(0)
## .. .. .. .. .. .. ..@ width : int(0)
## .. .. .. .. .. .. ..@ NAMES : NULL
## .. .. .. .. .. .. ..@ elementType : chr "integer"
## .. .. .. .. .. .. ..@ elementMetadata: NULL
## .. .. .. .. .. .. ..@ metadata : list()
## .. .. .. .. ..@ strand :Formal class 'Rle' [package "S4Vectors"] with 4 slots
## .. .. .. .. .. .. ..@ values : Factor w/ 3 levels "+","-","*":
## .. .. .. .. .. .. ..@ lengths : int(0)
## .. .. .. .. .. .. ..@ elementMetadata: NULL
## .. .. .. .. .. .. ..@ metadata : list()
## .. .. .. .. ..@ elementMetadata:Formal class 'DataFrame' [package "S4Vectors"] with 6 slots
## .. .. .. .. .. .. ..@ rownames : NULL
## .. .. .. .. .. .. ..@ nrows : int 0
## .. .. .. .. .. .. ..@ listData : Named list()
## .. .. .. .. .. .. ..@ elementType : chr "ANY"
## .. .. .. .. .. .. ..@ elementMetadata: NULL
## .. .. .. .. .. .. ..@ metadata : list()
## .. .. .. .. ..@ seqinfo :Formal class 'Seqinfo' [package "GenomeInfoDb"] with 4 slots
## .. .. .. .. .. .. ..@ seqnames : chr(0)
## .. .. .. .. .. .. ..@ seqlengths : int(0)
## .. .. .. .. .. .. ..@ is_circular: logi(0)
## .. .. .. .. .. .. ..@ genome : chr(0)
## .. .. .. .. ..@ metadata : list()
## .. .. ..@ elementMetadata:Formal class 'DataFrame' [package "S4Vectors"] with 6 slots
## .. .. .. .. ..@ rownames : NULL
## .. .. .. .. ..@ nrows : int 9519
## .. .. .. .. ..@ listData : Named list()
## .. .. .. .. ..@ elementType : chr "ANY"
## .. .. .. .. ..@ elementMetadata:Formal class 'DataFrame' [package "S4Vectors"] with 6 slots
## .. .. .. .. .. .. ..@ rownames : NULL
## .. .. .. .. .. .. ..@ nrows : int 0
## .. .. .. .. .. .. ..@ listData :List of 2
## .. .. .. .. .. .. .. ..$ type : chr(0)
## .. .. .. .. .. .. .. ..$ description: chr(0)
## .. .. .. .. .. .. ..@ elementType : chr "ANY"
## .. .. .. .. .. .. ..@ elementMetadata: NULL
## .. .. .. .. .. .. ..@ metadata : list()
## .. .. .. .. ..@ metadata : list()
## .. .. ..@ partitioning :Formal class 'PartitioningByEnd' [package "IRanges"] with 5 slots
## .. .. .. .. ..@ end : int [1:9519] 0 0 0 0 0 0 0 0 0 0 ...
## .. .. .. .. ..@ NAMES : chr [1:9519] "ENSMUSG00000000001" "ENSMUSG00000000056" "ENSMUSG00000000058" "ENSMUSG00000000078" ...
## .. .. .. .. ..@ elementType : chr "integer"
## .. .. .. .. ..@ elementMetadata: NULL
## .. .. .. .. ..@ metadata : list()
## .. .. ..@ elementType : chr "GRanges"
## .. .. ..@ metadata : list()
## ..@ colData :Formal class 'DataFrame' [package "S4Vectors"] with 6 slots
## .. .. ..@ rownames : chr [1:21] "SRX033480" "SRX033488" "SRX033481" "SRX033489" ...
## .. .. ..@ nrows : int 21
## .. .. ..@ listData :List of 2
## .. .. .. ..$ strain: Factor w/ 2 levels "B6","D2": 1 1 1 1 1 1 1 1 1 1 ...
## .. .. .. ..$ exprmt: Factor w/ 3 levels "4","6","7": 2 3 2 3 2 3 2 1 1 1 ...
## .. .. ..@ elementType : chr "ANY"
## .. .. ..@ elementMetadata:Formal class 'DataFrame' [package "S4Vectors"] with 6 slots
## .. .. .. .. ..@ rownames : NULL
## .. .. .. .. ..@ nrows : int 2
## .. .. .. .. ..@ listData :List of 2
## .. .. .. .. .. ..$ type : chr [1:2] "input" "input"
## .. .. .. .. .. ..$ description: chr [1:2] "" ""
## .. .. .. .. ..@ elementType : chr "ANY"
## .. .. .. .. ..@ elementMetadata: NULL
## .. .. .. .. ..@ metadata : list()
## .. .. ..@ metadata : list()
## ..@ assays :Reference class 'ShallowSimpleListAssays' [package "GenomicRanges"] with 1 field
## .. ..$ data:Formal class 'SimpleList' [package "S4Vectors"] with 4 slots
## .. .. .. ..@ listData :List of 1
## .. .. .. .. ..$ counts: int [1:9519, 1:21] 369 21 15 517 273 11 19 19 97 108 ...
## .. .. .. .. .. ..- attr(*, "dimnames")=List of 2
## .. .. .. .. .. .. ..$ : chr [1:9519] "ENSMUSG00000000001" "ENSMUSG00000000056" "ENSMUSG00000000058" "ENSMUSG00000000078" ...
## .. .. .. .. .. .. ..$ : chr [1:21] "SRX033480" "SRX033488" "SRX033481" "SRX033489" ...
## .. .. .. ..@ elementType : chr "ANY"
## .. .. .. ..@ elementMetadata: NULL
## .. .. .. ..@ metadata : list()
## .. ..and 14 methods, of which 2 are possibly relevant:
## .. .. .objectPackage, .objectParent
slotNames(dds)
## [1] "design" "dispersionFunction" "exptData"
## [4] "rowData" "colData" "assays"
head(dds@assays$data@listData$counts)
## SRX033480 SRX033488 SRX033481 SRX033489 SRX033482
## ENSMUSG00000000001 369 744 287 769 348
## ENSMUSG00000000056 21 46 20 36 12
## ENSMUSG00000000058 15 43 12 34 14
## ENSMUSG00000000078 517 874 340 813 378
## ENSMUSG00000000088 273 781 275 745 301
## ENSMUSG00000000093 11 24 13 34 27
## SRX033490 SRX033483 SRX033476 SRX033478 SRX033479
## ENSMUSG00000000001 803 433 469 585 321
## ENSMUSG00000000056 55 27 44 32 47
## ENSMUSG00000000058 32 19 18 44 22
## ENSMUSG00000000078 860 528 401 584 401
## ENSMUSG00000000088 653 365 414 454 331
## ENSMUSG00000000093 40 17 49 47 36
## SRX033472 SRX033473 SRX033474 SRX033475 SRX033491
## ENSMUSG00000000001 301 461 309 374 781
## ENSMUSG00000000056 40 40 30 27 46
## ENSMUSG00000000058 17 24 29 15 34
## ENSMUSG00000000078 331 431 341 480 930
## ENSMUSG00000000088 473 548 413 395 1153
## ENSMUSG00000000093 28 31 23 20 36
## SRX033484 SRX033492 SRX033485 SRX033493 SRX033486
## ENSMUSG00000000001 555 820 294 758 419
## ENSMUSG00000000056 28 40 21 52 27
## ENSMUSG00000000058 23 38 17 29 12
## ENSMUSG00000000078 585 1137 490 1079 565
## ENSMUSG00000000088 878 859 431 909 592
## ENSMUSG00000000093 15 38 36 31 10
## SRX033494
## ENSMUSG00000000001 857
## ENSMUSG00000000056 45
## ENSMUSG00000000058 28
## ENSMUSG00000000078 726
## ENSMUSG00000000088 1009
## ENSMUSG00000000093 35
dds<-DESeq(dds)
## estimating size factors
## estimating dispersions
## gene-wise dispersion estimates
## mean-dispersion relationship
## final dispersion estimates
## fitting model and testing
str(dds)
## Formal class 'DESeqDataSet' [package "DESeq2"] with 6 slots
## ..@ design :Class 'formula' length 2 ~strain + exprmt
## .. .. ..- attr(*, ".Environment")=<environment: R_GlobalEnv>
## ..@ dispersionFunction:function (q)
## .. ..- attr(*, "coefficients")= Named num [1:2] 0.0143 0.8318
## .. .. ..- attr(*, "names")= chr [1:2] "asymptDisp" "extraPois"
## .. ..- attr(*, "fitType")= chr "parametric"
## .. ..- attr(*, "varLogDispEsts")= num 0.672
## .. ..- attr(*, "dispPriorVar")= num 0.547
## ..@ exptData :Formal class 'SimpleList' [package "S4Vectors"] with 4 slots
## .. .. ..@ listData : list()
## .. .. ..@ elementType : chr "ANY"
## .. .. ..@ elementMetadata: NULL
## .. .. ..@ metadata : list()
## ..@ rowData :Formal class 'GRangesList' [package "GenomicRanges"] with 5 slots
## .. .. ..@ unlistData :Formal class 'GRanges' [package "GenomicRanges"] with 6 slots
## .. .. .. .. ..@ seqnames :Formal class 'Rle' [package "S4Vectors"] with 4 slots
## .. .. .. .. .. .. ..@ values : Factor w/ 0 levels:
## .. .. .. .. .. .. ..@ lengths : int(0)
## .. .. .. .. .. .. ..@ elementMetadata: NULL
## .. .. .. .. .. .. ..@ metadata : list()
## .. .. .. .. ..@ ranges :Formal class 'IRanges' [package "IRanges"] with 6 slots
## .. .. .. .. .. .. ..@ start : int(0)
## .. .. .. .. .. .. ..@ width : int(0)
## .. .. .. .. .. .. ..@ NAMES : NULL
## .. .. .. .. .. .. ..@ elementType : chr "integer"
## .. .. .. .. .. .. ..@ elementMetadata: NULL
## .. .. .. .. .. .. ..@ metadata : list()
## .. .. .. .. ..@ strand :Formal class 'Rle' [package "S4Vectors"] with 4 slots
## .. .. .. .. .. .. ..@ values : Factor w/ 3 levels "+","-","*":
## .. .. .. .. .. .. ..@ lengths : int(0)
## .. .. .. .. .. .. ..@ elementMetadata: NULL
## .. .. .. .. .. .. ..@ metadata : list()
## .. .. .. .. ..@ elementMetadata:Formal class 'DataFrame' [package "S4Vectors"] with 6 slots
## .. .. .. .. .. .. ..@ rownames : NULL
## .. .. .. .. .. .. ..@ nrows : int 0
## .. .. .. .. .. .. ..@ listData : Named list()
## .. .. .. .. .. .. ..@ elementType : chr "ANY"
## .. .. .. .. .. .. ..@ elementMetadata: NULL
## .. .. .. .. .. .. ..@ metadata : list()
## .. .. .. .. ..@ seqinfo :Formal class 'Seqinfo' [package "GenomeInfoDb"] with 4 slots
## .. .. .. .. .. .. ..@ seqnames : chr(0)
## .. .. .. .. .. .. ..@ seqlengths : int(0)
## .. .. .. .. .. .. ..@ is_circular: logi(0)
## .. .. .. .. .. .. ..@ genome : chr(0)
## .. .. .. .. ..@ metadata : list()
## .. .. ..@ elementMetadata:Formal class 'DataFrame' [package "S4Vectors"] with 6 slots
## .. .. .. .. ..@ rownames : NULL
## .. .. .. .. ..@ nrows : int 9519
## .. .. .. .. ..@ listData :List of 41
## .. .. .. .. .. ..$ baseMean : num [1:9519] 489.2 33.3 23.3 571.8 538.2 ...
## .. .. .. .. .. ..$ baseVar : num [1:9519] 5367.7 51.6 39.2 13831.8 16166.7 ...
## .. .. .. .. .. ..$ allZero : logi [1:9519] FALSE FALSE FALSE FALSE FALSE FALSE ...
## .. .. .. .. .. ..$ dispGeneEst : num [1:9519] 1.33e-02 1.00e-08 2.50e-02 2.33e-02 1.50e-02 ...
## .. .. .. .. .. ..$ dispFit : num [1:9519] 0.016 0.0393 0.0501 0.0158 0.0159 ...
## .. .. .. .. .. ..$ dispersion : num [1:9519] 0.0139 0.0188 0.0358 0.0207 0.0151 ...
## .. .. .. .. .. ..$ dispIter : int [1:9519] 8 9 8 10 6 5 10 5 11 10 ...
## .. .. .. .. .. ..$ dispOutlier : logi [1:9519] FALSE FALSE FALSE FALSE FALSE FALSE ...
## .. .. .. .. .. ..$ dispMAP : num [1:9519] 0.0139 0.0188 0.0358 0.0207 0.0151 ...
## .. .. .. .. .. ..$ Intercept : num [1:9519] 8.93 5.05 4.54 9.14 9.04 ...
## .. .. .. .. .. ..$ strainB6 : num [1:9519] 0.04796 0.0275 0.08564 -0.00521 -0.22016 ...
## .. .. .. .. .. ..$ strainD2 : num [1:9519] -0.04796 -0.0275 -0.08564 0.00521 0.22016 ...
## .. .. .. .. .. ..$ exprmt4 : num [1:9519] -0.184 0.232 0.121 -0.297 -0.216 ...
## .. .. .. .. .. ..$ exprmt6 : num [1:9519] 0.0743 -0.1248 -0.0968 0.1988 0.1216 ...
## .. .. .. .. .. ..$ exprmt7 : num [1:9519] 0.1101 -0.1068 -0.024 0.098 0.0941 ...
## .. .. .. .. .. ..$ SE_Intercept : num [1:9519] 0.04 0.0702 0.0889 0.0474 0.0413 ...
## .. .. .. .. .. ..$ SE_strainB6 : num [1:9519] 0.0383 0.0604 0.071 0.0445 0.0394 ...
## .. .. .. .. .. ..$ SE_strainD2 : num [1:9519] 0.0383 0.0604 0.071 0.0445 0.0394 ...
## .. .. .. .. .. ..$ SE_exprmt4 : num [1:9519] 0.0544 0.086 0.1026 0.0633 0.056 ...
## .. .. .. .. .. ..$ SE_exprmt6 : num [1:9519] 0.0548 0.0917 0.1066 0.0635 0.0564 ...
## .. .. .. .. .. ..$ SE_exprmt7 : num [1:9519] 0.0535 0.0842 0.0999 0.0626 0.0551 ...
## .. .. .. .. .. ..$ MLE_Intercept : num [1:9519] 8.79 5.34 4.8 8.82 8.58 ...
## .. .. .. .. .. ..$ MLE_strain_D2_vs_B6 : num [1:9519] -0.1003 -0.0646 -0.2157 0.0136 0.4649 ...
## .. .. .. .. .. ..$ MLE_exprmt_6_vs_4 : num [1:9519] 0.27 -0.409 -0.274 0.528 0.356 ...
## .. .. .. .. .. ..$ MLE_exprmt_7_vs_4 : num [1:9519] 0.308 -0.38 -0.174 0.42 0.325 ...
## .. .. .. .. .. ..$ WaldStatistic_Intercept: num [1:9519] 223.5 71.8 51 193 218.7 ...
## .. .. .. .. .. ..$ WaldStatistic_strainB6 : num [1:9519] 1.253 0.455 1.206 -0.117 -5.581 ...
## .. .. .. .. .. ..$ WaldStatistic_strainD2 : num [1:9519] -1.253 -0.455 -1.206 0.117 5.581 ...
## .. .. .. .. .. ..$ WaldStatistic_exprmt4 : num [1:9519] -3.39 2.69 1.18 -4.69 -3.85 ...
## .. .. .. .. .. ..$ WaldStatistic_exprmt6 : num [1:9519] 1.356 -1.361 -0.909 3.131 2.158 ...
## .. .. .. .. .. ..$ WaldStatistic_exprmt7 : num [1:9519] 2.06 -1.27 -0.24 1.57 1.71 ...
## .. .. .. .. .. ..$ WaldPvalue_Intercept : num [1:9519] 0 0 0 0 0 ...
## .. .. .. .. .. ..$ WaldPvalue_strainB6 : num [1:9519] 2.10e-01 6.49e-01 2.28e-01 9.07e-01 2.39e-08 ...
## .. .. .. .. .. ..$ WaldPvalue_strainD2 : num [1:9519] 2.10e-01 6.49e-01 2.28e-01 9.07e-01 2.39e-08 ...
## .. .. .. .. .. ..$ WaldPvalue_exprmt4 : num [1:9519] 7.03e-04 7.13e-03 2.39e-01 2.78e-06 1.16e-04 ...
## .. .. .. .. .. ..$ WaldPvalue_exprmt6 : num [1:9519] 0.17511 0.17361 0.36358 0.00174 0.03091 ...
## .. .. .. .. .. ..$ WaldPvalue_exprmt7 : num [1:9519] 0.0395 0.2045 0.8102 0.1175 0.0879 ...
## .. .. .. .. .. ..$ betaConv : logi [1:9519] TRUE TRUE TRUE TRUE TRUE TRUE ...
## .. .. .. .. .. ..$ betaIter : num [1:9519] 4 4 4 5 6 7 6 6 9 5 ...
## .. .. .. .. .. ..$ deviance : num [1:9519] 229 133 131 244 233 ...
## .. .. .. .. .. ..$ maxCooks : Named num [1:9519] 0.0992 0.0515 0.0946 0.1383 0.0643 ...
## .. .. .. .. .. .. ..- attr(*, "names")= chr [1:9519] "ENSMUSG00000000001" "ENSMUSG00000000056" "ENSMUSG00000000058" "ENSMUSG00000000078" ...
## .. .. .. .. ..@ elementType : chr "ANY"
## .. .. .. .. ..@ elementMetadata:Formal class 'DataFrame' [package "S4Vectors"] with 6 slots
## .. .. .. .. .. .. ..@ rownames : NULL
## .. .. .. .. .. .. ..@ nrows : int 41
## .. .. .. .. .. .. ..@ listData :List of 2
## .. .. .. .. .. .. .. ..$ type : chr [1:41] "intermediate" "intermediate" "intermediate" "intermediate" ...
## .. .. .. .. .. .. .. ..$ description: chr [1:41] "mean of normalized counts for all samples" "variance of normalized counts for all samples" "all counts for a gene are zero" "gene-wise estimates of dispersion" ...
## .. .. .. .. .. .. ..@ elementType : chr "ANY"
## .. .. .. .. .. .. ..@ elementMetadata: NULL
## .. .. .. .. .. .. ..@ metadata : list()
## .. .. .. .. ..@ metadata : list()
## .. .. ..@ partitioning :Formal class 'PartitioningByEnd' [package "IRanges"] with 5 slots
## .. .. .. .. ..@ end : int [1:9519] 0 0 0 0 0 0 0 0 0 0 ...
## .. .. .. .. ..@ NAMES : chr [1:9519] "ENSMUSG00000000001" "ENSMUSG00000000056" "ENSMUSG00000000058" "ENSMUSG00000000078" ...
## .. .. .. .. ..@ elementType : chr "integer"
## .. .. .. .. ..@ elementMetadata: NULL
## .. .. .. .. ..@ metadata : list()
## .. .. ..@ elementType : chr "GRanges"
## .. .. ..@ metadata : list()
## ..@ colData :Formal class 'DataFrame' [package "S4Vectors"] with 6 slots
## .. .. ..@ rownames : chr [1:21] "SRX033480" "SRX033488" "SRX033481" "SRX033489" ...
## .. .. ..@ nrows : int 21
## .. .. ..@ listData :List of 3
## .. .. .. ..$ strain : Factor w/ 2 levels "B6","D2": 1 1 1 1 1 1 1 1 1 1 ...
## .. .. .. ..$ exprmt : Factor w/ 3 levels "4","6","7": 2 3 2 3 2 3 2 1 1 1 ...
## .. .. .. ..$ sizeFactor: Named num [1:21] 0.644 1.345 0.578 1.429 0.635 ...
## .. .. .. .. ..- attr(*, "names")= chr [1:21] "SRX033480" "SRX033488" "SRX033481" "SRX033489" ...
## .. .. ..@ elementType : chr "ANY"
## .. .. ..@ elementMetadata:Formal class 'DataFrame' [package "S4Vectors"] with 6 slots
## .. .. .. .. ..@ rownames : NULL
## .. .. .. .. ..@ nrows : int 3
## .. .. .. .. ..@ listData :List of 2
## .. .. .. .. .. ..$ type : chr [1:3] "input" "input" "intermediate"
## .. .. .. .. .. ..$ description: chr [1:3] "" "" "a scaling factor for columns"
## .. .. .. .. ..@ elementType : chr "ANY"
## .. .. .. .. ..@ elementMetadata: NULL
## .. .. .. .. ..@ metadata : list()
## .. .. ..@ metadata : list()
## ..@ assays :Reference class 'ShallowSimpleListAssays' [package "GenomicRanges"] with 1 field
## .. ..$ data:Formal class 'SimpleList' [package "S4Vectors"] with 4 slots
## .. .. .. ..@ listData :List of 3
## .. .. .. .. ..$ counts: int [1:9519, 1:21] 369 21 15 517 273 11 19 19 97 108 ...
## .. .. .. .. .. ..- attr(*, "dimnames")=List of 2
## .. .. .. .. .. .. ..$ : chr [1:9519] "ENSMUSG00000000001" "ENSMUSG00000000056" "ENSMUSG00000000058" "ENSMUSG00000000078" ...
## .. .. .. .. .. .. ..$ : chr [1:21] "SRX033480" "SRX033488" "SRX033481" "SRX033489" ...
## .. .. .. .. ..$ mu : num [1:9519, 1:21] 341.8 19.9 14.9 415.9 316 ...
## .. .. .. .. .. ..- attr(*, "dimnames")=List of 2
## .. .. .. .. .. .. ..$ : chr [1:9519] "ENSMUSG00000000001" "ENSMUSG00000000056" "ENSMUSG00000000058" "ENSMUSG00000000078" ...
## .. .. .. .. .. .. ..$ : chr [1:21] "SRX033480" "SRX033488" "SRX033481" "SRX033489" ...
## .. .. .. .. ..$ cooks : num [1:9519, 1:21] 9.54e-03 9.82e-04 1.91e-05 7.47e-02 7.84e-03 ...
## .. .. .. ..@ elementType : chr "ANY"
## .. .. .. ..@ elementMetadata: NULL
## .. .. .. ..@ metadata : list()
## .. ..and 14 methods, of which 2 are possibly relevant:
## .. .. .objectPackage, .objectParent
Estimate and represent gene-specific dispersion
plotDispEsts(dds,main="parametric")
ddsLocal <- estimateDispersions(dds, fitType="local")
## found already estimated dispersions, replacing these
## gene-wise dispersion estimates
## mean-dispersion relationship
## final dispersion estimates
plotDispEsts(ddsLocal,main="local")
ddsMean <- estimateDispersions(dds, fitType="mean")
## found already estimated dispersions, replacing these
## gene-wise dispersion estimates
## mean-dispersion relationship
## final dispersion estimates
plotDispEsts(ddsMean,main="mean")
ddsLocal<-nbinomWaldTest(ddsLocal)
dds_pv<-results(ddsLocal,c("strain","B6","D2"))
str(dds_pv)
## Formal class 'DESeqResults' [package "DESeq2"] with 6 slots
## ..@ rownames : chr [1:9519] "ENSMUSG00000000001" "ENSMUSG00000000056" "ENSMUSG00000000058" "ENSMUSG00000000078" ...
## ..@ nrows : int 9519
## ..@ listData :List of 6
## .. ..$ baseMean : num [1:9519] 489.2 33.3 23.3 571.8 538.2 ...
## .. ..$ log2FoldChange: num [1:9519] 0.096 0.0554 0.1732 -0.0105 -0.4408 ...
## .. ..$ lfcSE : num [1:9519] 0.0736 0.1171 0.1372 0.086 0.0761 ...
## .. ..$ stat : num [1:9519] 1.303 0.473 1.262 -0.123 -5.792 ...
## .. ..$ pvalue : num [1:9519] 1.92e-01 6.36e-01 2.07e-01 9.02e-01 6.97e-09 ...
## .. ..$ padj : num [1:9519] 3.78e-01 7.86e-01 3.95e-01 9.48e-01 2.24e-07 ...
## ..@ elementType : chr "ANY"
## ..@ elementMetadata:Formal class 'DataFrame' [package "S4Vectors"] with 6 slots
## .. .. ..@ rownames : NULL
## .. .. ..@ nrows : int 6
## .. .. ..@ listData :List of 2
## .. .. .. ..$ type : chr [1:6] "intermediate" "results" "results" "results" ...
## .. .. .. ..$ description: chr [1:6] "mean of normalized counts for all samples" "log2 fold change (MAP): strain B6 vs D2" "standard error: strain B6 vs D2" "Wald statistic: strain B6 vs D2" ...
## .. .. ..@ elementType : chr "ANY"
## .. .. ..@ elementMetadata: NULL
## .. .. ..@ metadata : list()
## ..@ metadata : list()
head(dds_pv)
## log2 fold change (MAP): strain B6 vs D2
## Wald test p-value: strain B6 vs D2
## DataFrame with 6 rows and 6 columns
## baseMean log2FoldChange lfcSE stat
## <numeric> <numeric> <numeric> <numeric>
## ENSMUSG00000000001 489.20672 0.09596214 0.07363445 1.3032234
## ENSMUSG00000000056 33.27882 0.05537447 0.11705943 0.4730458
## ENSMUSG00000000058 23.28282 0.17320092 0.13723485 1.2620768
## ENSMUSG00000000078 571.78924 -0.01053486 0.08596506 -0.1225482
## ENSMUSG00000000088 538.23739 -0.44080099 0.07610857 -5.7917396
## ENSMUSG00000000093 27.59041 0.18432724 0.14033991 1.3134343
## pvalue padj
## <numeric> <numeric>
## ENSMUSG00000000001 1.924985e-01 3.778131e-01
## ENSMUSG00000000056 6.361805e-01 7.860898e-01
## ENSMUSG00000000058 2.069212e-01 3.947260e-01
## ENSMUSG00000000078 9.024649e-01 9.481858e-01
## ENSMUSG00000000088 6.966109e-09 2.240216e-07
## ENSMUSG00000000093 1.890367e-01 3.730182e-01
head(data.frame(dds_pv@listData))
## baseMean log2FoldChange lfcSE stat pvalue padj
## 1 489.20672 0.09596214 0.07363445 1.3032234 1.924985e-01 3.778131e-01
## 2 33.27882 0.05537447 0.11705943 0.4730458 6.361805e-01 7.860898e-01
## 3 23.28282 0.17320092 0.13723485 1.2620768 2.069212e-01 3.947260e-01
## 4 571.78924 -0.01053486 0.08596506 -0.1225482 9.024649e-01 9.481858e-01
## 5 538.23739 -0.44080099 0.07610857 -5.7917396 6.966109e-09 2.240216e-07
## 6 27.59041 0.18432724 0.14033991 1.3134343 1.890367e-01 3.730182e-01
Limma uses the data object created for edgeR. But it requires computation of normalized log-cpm and weights.
design
## (Intercept) exprmt6 exprmt7 strainD2
## 1 1 1 0 0
## 2 1 0 1 0
## 3 1 1 0 0
## 4 1 0 1 0
## 5 1 1 0 0
## 6 1 0 1 0
## 7 1 1 0 0
## 8 1 0 0 0
## 9 1 0 0 0
## 10 1 0 0 0
## 11 1 0 0 1
## 12 1 0 0 1
## 13 1 0 0 1
## 14 1 0 0 1
## 15 1 0 1 1
## 16 1 1 0 1
## 17 1 0 1 1
## 18 1 1 0 1
## 19 1 0 1 1
## 20 1 1 0 1
## 21 1 0 1 1
## attr(,"assign")
## [1] 0 1 1 2
## attr(,"contrasts")
## attr(,"contrasts")$exprmt
## [1] "contr.treatment"
##
## attr(,"contrasts")$strain
## [1] "contr.treatment"
v<-voom(dge,design=design,plot=T)
class(v)
## [1] "EList"
## attr(,"package")
## [1] "limma"
names(v)
## [1] "targets" "E" "weights" "design"
head(v$targets)
## group lib.size norm.factors
## SRX033480 B6 2978325 0.9796169
## SRX033488 B6 6192583 0.9823782
## SRX033481 B6 2702283 0.9945498
## SRX033489 B6 6604472 1.0089641
## SRX033482 B6 2935177 0.9731442
## SRX033490 B6 7063440 0.9952180
head(v$E)
## SRX033480 SRX033488 SRX033481 SRX033489 SRX033482
## ENSMUSG00000000001 6.954929 6.909586 6.733239 6.864334 6.891567
## ENSMUSG00000000056 2.851763 2.908617 2.923373 2.466381 2.090408
## ENSMUSG00000000058 2.379694 2.812402 2.209677 2.385081 2.304533
## ENSMUSG00000000078 7.440913 7.141773 6.977332 6.944555 7.010701
## ENSMUSG00000000088 6.520895 6.979560 6.671729 6.818621 6.682566
## ENSMUSG00000000093 1.949060 1.984168 2.320708 2.385081 3.227912
## SRX033490 SRX033483 SRX033476 SRX033478 SRX033479
## ENSMUSG00000000001 6.829783 6.893875 6.499324 6.881874 6.270703
## ENSMUSG00000000056 2.974045 2.915347 3.100077 2.710717 3.511884
## ENSMUSG00000000058 2.201997 2.419389 1.833796 3.164082 2.433882
## ENSMUSG00000000078 6.928660 7.179746 6.273599 6.879408 6.591285
## ENSMUSG00000000088 6.531672 6.647714 6.319571 6.516485 6.314893
## ENSMUSG00000000093 2.519479 2.263270 3.253700 3.258204 3.131853
## SRX033472 SRX033473 SRX033474 SRX033475 SRX033491
## ENSMUSG00000000001 6.218531 6.609389 6.394088 6.710040 6.712050
## ENSMUSG00000000056 3.322367 3.099052 3.051030 2.942577 2.641107
## ENSMUSG00000000058 2.111800 2.373912 3.002936 2.115414 2.210472
## ENSMUSG00000000078 6.355382 6.512419 6.536035 7.069610 6.963810
## ENSMUSG00000000088 6.869737 6.858550 6.812036 6.788752 7.273750
## ENSMUSG00000000093 2.815407 2.736482 2.674882 2.518770 2.291772
## SRX033484 SRX033492 SRX033485 SRX033493 SRX033486
## ENSMUSG00000000001 6.921020 6.825649 6.398033 6.675466 6.788622
## ENSMUSG00000000056 2.636267 2.485139 2.622174 2.822706 2.857454
## ENSMUSG00000000058 2.357966 2.412076 2.325193 1.991104 1.719951
## ENSMUSG00000000078 6.996902 7.296940 7.134019 7.184608 7.219478
## ENSMUSG00000000088 7.582275 6.892643 6.949126 6.937390 7.286766
## ENSMUSG00000000093 1.757573 2.412076 3.385734 2.085741 1.468412
## SRX033494
## ENSMUSG00000000001 6.988519
## ENSMUSG00000000056 2.752321
## ENSMUSG00000000058 2.077416
## ENSMUSG00000000078 6.749345
## ENSMUSG00000000088 7.223952
## ENSMUSG00000000093 2.394273
head(v$weights)
## [,1] [,2] [,3] [,4] [,5] [,6] [,7]
## [1,] 29.520121 37.592371 28.418093 38.191085 29.352906 38.803350 31.797637
## [2,] 4.753512 8.712961 4.359972 9.145292 4.692210 9.602105 5.638693
## [3,] 3.738808 7.280757 3.432784 7.658706 3.690856 8.069170 4.479787
## [4,] 31.787614 38.453483 30.705487 39.031534 31.623213 39.625190 33.995007
## [5,] 28.470426 36.245594 27.354121 36.877720 28.300114 37.515754 30.767908
## [6,] 4.032555 7.423172 3.698069 7.810445 3.980048 8.224901 4.829683
## [,8] [,9] [,10] [,11] [,12] [,13] [,14]
## [1,] 33.606744 33.132722 31.185637 30.082612 31.824820 28.998998 28.682172
## [2,] 9.312308 9.015158 7.883283 7.570647 8.534937 7.021820 6.866388
## [3,] 6.818210 6.580629 5.701176 4.992767 5.684194 4.593480 4.480163
## [4,] 33.791194 33.313923 31.374523 31.179458 32.900208 30.100064 29.780342
## [5,] 32.129032 31.636951 29.658117 32.955911 34.596531 31.897338 31.578157
## [6,] 9.004416 8.707285 7.603952 6.463668 7.311152 5.979566 5.842153
## [,15] [,16] [,17] [,18] [,19] [,20] [,21]
## [1,] 38.659319 33.544453 38.385294 30.539659 38.617985 31.467327 37.755020
## [2,] 9.816726 6.671090 9.604692 5.337045 9.785119 5.717583 9.137173
## [3,] 7.602853 4.887909 7.425180 3.835544 7.575817 4.131169 7.033229
## [4,] 40.176512 36.424644 39.918593 33.642238 40.137621 34.519129 39.318666
## [5,] 40.850905 36.602147 40.598256 33.838445 40.812814 34.708788 40.006712
## [6,] 7.474163 5.049776 7.300230 3.969444 7.447698 4.276132 6.913856
head(v$design)
## (Intercept) exprmt6 exprmt7 strainD2
## 1 1 1 0 0
## 2 1 0 1 0
## 3 1 1 0 0
## 4 1 0 1 0
## 5 1 1 0 0
## 6 1 0 1 0
plot(rowMeans(v$weights)~rowMeans(v$E),ylab="average weight", xlab="average normalized log-cpm")
Fit the model and compute empirical bayes tests
gausfit<-lmFit(v)
gausfit<-eBayes(gausfit)
names(gausfit)
## [1] "coefficients" "stdev.unscaled" "sigma"
## [4] "df.residual" "cov.coefficients" "pivot"
## [7] "rank" "Amean" "method"
## [10] "design" "df.prior" "s2.prior"
## [13] "var.prior" "proportion" "s2.post"
## [16] "t" "df.total" "p.value"
## [19] "lods" "F" "F.p.value"
DElist<-topTable(gausfit,coef=4,sort.by="P",number=nrow(gausfit))
head(DElist)
## logFC AveExpr t P.Value
## ENSMUSG00000023236 1.417362 6.8878509 22.65338 8.234075e-19
## ENSMUSG00000030532 1.524011 5.3545041 21.40751 3.396734e-18
## ENSMUSG00000028393 1.741480 5.8179317 20.38376 1.151548e-17
## ENSMUSG00000015484 -2.009751 3.9634711 -19.71669 2.627959e-17
## ENSMUSG00000054354 -5.787430 -0.2156264 -19.10139 5.750502e-17
## ENSMUSG00000027855 5.464415 -0.3131727 18.80571 8.443931e-17
## adj.P.Val B
## ENSMUSG00000023236 7.838016e-15 33.00454
## ENSMUSG00000030532 1.616676e-14 31.65096
## ENSMUSG00000028393 3.653861e-14 30.39929
## ENSMUSG00000015484 6.253886e-14 29.62608
## ENSMUSG00000054354 1.094781e-13 27.00095
## ENSMUSG00000027855 1.339630e-13 26.43706
names(DElist)
## [1] "logFC" "AveExpr" "t" "P.Value" "adj.P.Val" "B"
Delist05<-DElist[DElist$adj.P.Val<0.01,]
dim(Delist05)
## [1] 887 6
Compare log-pvalues obtained with each analysis.
edgeRres<-(de.tagwiseGLM$table)
limmares<-DElist
head(edgeRres)
## logFC logCPM LR PValue
## ENSMUSG00000000001 -0.09627830 6.734014 1.38610446 2.390641e-01
## ENSMUSG00000000056 -0.06025066 2.926703 0.21918325 6.396629e-01
## ENSMUSG00000000058 -0.21150828 2.446897 1.54943238 2.132193e-01
## ENSMUSG00000000078 0.01756544 6.957275 0.03482745 8.519577e-01
## ENSMUSG00000000088 0.46897752 6.872210 31.06223653 2.498860e-08
## ENSMUSG00000000093 -0.22158066 2.663392 1.48691771 2.226953e-01
head(limmares)
## logFC AveExpr t P.Value
## ENSMUSG00000023236 1.417362 6.8878509 22.65338 8.234075e-19
## ENSMUSG00000030532 1.524011 5.3545041 21.40751 3.396734e-18
## ENSMUSG00000028393 1.741480 5.8179317 20.38376 1.151548e-17
## ENSMUSG00000015484 -2.009751 3.9634711 -19.71669 2.627959e-17
## ENSMUSG00000054354 -5.787430 -0.2156264 -19.10139 5.750502e-17
## ENSMUSG00000027855 5.464415 -0.3131727 18.80571 8.443931e-17
## adj.P.Val B
## ENSMUSG00000023236 7.838016e-15 33.00454
## ENSMUSG00000030532 1.616676e-14 31.65096
## ENSMUSG00000028393 3.653861e-14 30.39929
## ENSMUSG00000015484 6.253886e-14 29.62608
## ENSMUSG00000054354 1.094781e-13 27.00095
## ENSMUSG00000027855 1.339630e-13 26.43706
limmares<-limmares[rownames(edgeRres),]
head(limmares)
## logFC AveExpr t P.Value
## ENSMUSG00000000001 -0.09784892 6.712887 -1.2730741 2.141035e-01
## ENSMUSG00000000056 -0.03782639 2.842134 -0.3021938 7.648755e-01
## ENSMUSG00000000058 -0.19364475 2.325846 -1.2016889 2.401679e-01
## ENSMUSG00000000078 0.01447678 6.923168 0.1645905 8.705217e-01
## ENSMUSG00000000088 0.45879578 6.832318 5.8202896 3.718937e-06
## ENSMUSG00000000093 -0.26961377 2.515931 -1.6093341 1.194539e-01
## adj.P.Val B
## ENSMUSG00000000001 0.4101532568 -7.206067
## ENSMUSG00000000056 0.8708320948 -7.236201
## ENSMUSG00000000058 0.4383800964 -6.418743
## ENSMUSG00000000078 0.9331093015 -8.028798
## ENSMUSG00000000088 0.0001224933 3.258217
## ENSMUSG00000000093 0.2859862513 -5.923539
DESeqres<-(data.frame(dds_pv@listData))
rownames(DESeqres)<-rownames(dds_pv)
head(DESeqres)
## baseMean log2FoldChange lfcSE stat
## ENSMUSG00000000001 489.20672 0.09596214 0.07363445 1.3032234
## ENSMUSG00000000056 33.27882 0.05537447 0.11705943 0.4730458
## ENSMUSG00000000058 23.28282 0.17320092 0.13723485 1.2620768
## ENSMUSG00000000078 571.78924 -0.01053486 0.08596506 -0.1225482
## ENSMUSG00000000088 538.23739 -0.44080099 0.07610857 -5.7917396
## ENSMUSG00000000093 27.59041 0.18432724 0.14033991 1.3134343
## pvalue padj
## ENSMUSG00000000001 1.924985e-01 3.778131e-01
## ENSMUSG00000000056 6.361805e-01 7.860898e-01
## ENSMUSG00000000058 2.069212e-01 3.947260e-01
## ENSMUSG00000000078 9.024649e-01 9.481858e-01
## ENSMUSG00000000088 6.966109e-09 2.240216e-07
## ENSMUSG00000000093 1.890367e-01 3.730182e-01
sum(rownames(limmares)!=rownames(edgeRres))
## [1] 0
sum(rownames(limmares)!=rownames(DESeqres))
## [1] 0
plot(-log10(limmares$"P.Value"),-log10(edgeRres$PValue),
xlab="Limma",ylab="EdgeR")
abline(0,1)
abline(v=4)
abline(h=4)
plot(-log10(DESeqres$pvalue),-log10(edgeRres$PValue),
xlab="DESeq2",ylab="EdgeR")
abline(0,1)
p05limma<-1*(limmares$"P.Value"<0.0001)
p05edge<-1*(edgeRres$PValue<0.0001)
p05des<-1*(DESeqres$pvalue<0.0001)
p05des[is.na(p05des)]<-0
obcount<-vennCounts(cbind(p05limma,p05edge,p05des))
vennDiagram(obcount)
table(p05des,p05edge)
## p05edge
## p05des 0 1
## 0 8684 17
## 1 99 719
q05limma<-1*(qvalue(limmares$"P.Value")$qvalue<0.01)
q05edge<-1*(qvalue(edgeRres$PValue)$qvalue<0.01)
pres<-DESeqres$pvalue
pres[is.na(pres)]<-1
q05des<-1*(qvalue(pres)$qvalue<0.01)
obcount<-vennCounts(cbind(q05limma,q05edge,q05des))
vennDiagram(obcount)
table(p05des,p05edge)
## p05edge
## p05des 0 1
## 0 8684 17
## 1 99 719