作者:Sonali Arora(sarora@fredhutch.org.)
日期:2015年7月20-22日
本课程的材料要求R版本3.2.1和生物导体版本3.2
在这个实验中,我们将探索来自气道然后随后使用相同的方式来运行快速的RNA-SEQ分析。
步骤包括-
rlog
转换本实验室使用的数据是一个用地塞米松治疗的气道平滑肌细胞的RNA-Seq实验,地塞米松是一种具有抗炎作用的合成糖皮质激素类固醇。例如,糖皮质激素被用于哮喘患者防止或减少呼吸道炎症。实验中,4株原代人气道平滑肌细胞株分别用1颗微摩尔地塞米松处理18小时。对于这四种细胞系,我们分别有处理过的和未处理过的样本。
实验的参考是:
他是,江X,瓦格纳P,胡河,王q,klanderman b,惠特克rm,duan q,lasky-su j,nikolos c,jester w,johnson m,panettieri r jr,tantisira kg,weiss st,lu q。“RNA-SEQ转录组分析将脆皮曲线导致响应基因识别为调节气道平滑肌细胞中细胞因子功能的糖皮质激素敏感基因。”Plos一个。2014年6月13日; 9(6):E99625。PMID:24926665.。地理:GSE52778。
对于我们的分析,我们将使用数据包中的数据气道。
库(“气道”)数据(气管)
Bioconductor软件包通常定义并为其数据对象使用自定义类,这确保了所有所需的数据插槽都是一致的,并满足要求。
存储在里面的数据气道是一个SummarizedExperiment对象。
图书馆(“气道”)数据(Airway)SE < - Airway Se
## class: rangedsummarizeexperiments ## dim: 64102 8 ## metadata(1): " ## assays(1): counts ## rownames(64102): ENSG00000000003 ENSG00000000005…LRG_98 LRG_99 ## rowRanges元数据列名称(0):## colnames(8): SRR1039508 SRR1039509…SRR1039520 SRR1039521 ## colData names(9): SampleName cell…样本BioSample
对于一个SummarizedExperiment对象,分析(s)
包含汇总值的矩阵(或矩阵)Rowdata.
包含关于基因组范围的信息,和colData
包含有关样品或实验的信息。
(试验(se))
# # SRR1039508 SRR1039509 SRR1039512 SRR1039513 SRR1039516 SRR1039517 SRR1039520 # # ENSG00000000003 679 448 873 408 1138 1047 770 # # ENSG00000000005 0 0 0 0 0 0 0 # # ENSG00000000419 467 515 621 365 587 799 417 # # ENSG00000000457 260 211 263 164 245 331 233 55 # # ENSG00000000460 60 40 35 78 63 76 # # ENSG00000000938 0 0 2 0 1 0 0 # # SRR1039521 # #ENSG00000000003 572 ## ENSG00000000005 0 ## ENSG00000000419 508 ## ENSG00000000457 229 ## ENSG00000000460 60 ## ENSG00000000938 0
COLSUMS(测定(SE))
## SRR1039508 SRR1039509 SRR1039512 SRR1039513 SRR1039516 SRR1039517 SRR1039520 SRR1039521 ## 20637971 18809481 25348649 15163415 24448408 30818215 19126151 21164133
colData (se)
## Dataframe带8行和9列## Samplename Cell Dex Albut Run Avglength实验样本## <因子> <因子> <因子> <因子> <因子> <整数> <因子> <因子> ## SRR1039508 GSM1275862 N61311untrt untrt SRR1039508 126 SRX384345 SRS508568 ## SRR1039509 GSM1275863 N61311 TRT untrt SRR1039509 126 SRX384346 SRS508567 ## SRR1039512 GSM1275866 N052611 untrt untrt SRR1039512 126 SRX384349 SRS508571 ## SRR1039513 GSM1275867 N052611 TRT untrt SRR1039513 87 SRX384350 SRS508572 ## SRR1039516 GSM1275870 N080611 untrt untrt SRR1039516 120 SRX384353 SRS508575## SRR1039517 GSM1275871 N080611 TRT untrt SRR1039517 126 SRX384354 SRS508576 ## SRR1039520 GSM1275874 N061011 untrt untrt SRR1039520 101 SRX384357 SRS508579 ## SRR1039521 GSM1275875 N061011 TRT untrt SRR1039521 98 SRX384358 SRS508580 ##生物样品## <因数> ## SRR1039508 SAMN02422669 ## SRR1039509 SAMN02422675##srr1039512 samn02422678 ## SRR1039513 SAMN02422670 ## SRR1039516 SAMN02422682 ## SRR1039517 SAMN02422673 ## SRR1039520 SAMN02422683 ## SRR1039521 SAMN02422677
rowRanges (se)
## GRangesList对象长度64102:## $ENSG00000000003 ## GRangesList对象17范围和2元数据列:# # seqnames范围链| exon_id exon_name # # < Rle > < IRanges > < Rle > | <整数> <人物> # # [1]X(99883667、99883667)- 667145 | ENSE00001459322 # # [2] X(99885756、99885756)- | 667146 ENSE00000868868 # # [3] X(99887482、99887482)- | 667147 ENSE00000401072 # # [4] X(99887538、99887538)- | 667148 ENSE00001849132 # # [5] X [99888402,99888536) - | 667149 ENSE00003554016 ## ... ... ... ... ... ... ...# # [13] X(99890555、99890555)- 667156 | ENSE00003512331 # # [14] X(99891188、99891188)- | 667158 ENSE00001886883 # # [15] X(99891605、99891605)- | 667159 ENSE00001855382 # # [16] X(99891790、99891790)- | 667160 ENSE00001863395 # # [17] X(99894942、99894942)- | 667161 ENSE00001828996 ## ## ...## <64101 more elements> ## ------- ## seqinfo: 722个序列(1个循环)来自一个未指定的基因组
在deseq2.,调用自定义类deseqdataset.。它建立在顶部SummarizedExperiment类。
图书馆(DESEQ2)
##加载所需包:RCPP ##加载所需包:RCPParmadillo
DDS < - DESQDATASET(SE,DESIGN =〜CELL + DEX)
许多用于多维数据探索性分析的常用统计方法,特别是聚类和排序方法(如主成分分析等),最适合于(至少近似地)同方差数据;这意味着一个观测量的方差(这里是一个基因的表达强度)不依赖于平均值。
在RNA-Seq数据中,方差随均值增长。如果对一个归一化读计数矩阵进行PCA(主成分分析),其结果通常只取决于少数表达最强烈的基因,因为它们显示了样本之间最大的绝对差异。
作为解决方案,DESEQ2提供了正规化对数转换,或简短的RLOG。有关更多信息和选项,请参阅帮助?RLOG。
函数rlog返回一个summarizedexperimental对象,该对象在其分析槽中包含rlog转换后的值:
RLD < - RLOG(DDS)头(测定(RLD))
## SRR1039508 SRR1039509 SRR1039512 SRR1039513 SRR1039516 SRR1039517 SRR1039520 ## ENSG00000000003 9.399151 9.142478 9.501695 9.320796 9.757212 9.512183 9.617378 ## ENSG00000000005 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 ## ENSG00000000419 8.901283 9.113976 9.032567 9.063925 8.981930 9.108531 8.894830 ## ENSG000000004577.949897 7.882371 7.834273 7.916459 7.886645 7.946411 ## ENSG00000000460 5.849521 5.882363 5.486937 5.770334 5.940407 5.663847 6.107733 ## ENSG00000000938 -1.638084 -1.637483 -1.558248 -1.636072 -1.597606 -1.639362 -1.637608 ## SRR1039521 ## ENSG00000000003 9.315309 ## ENSG00000000419 9.052303 ## ENSG000000004577.908338 ## ENSG00000000460 5.907824 ## ENSG00000000938 -1.637724
评估样本之间的整体相似性:哪些样本彼此相似,哪些不同?这符合实验设计的预期吗?我们使用R函数dist来计算样本之间的欧氏距离。为了避免距离测量是由几个高度可变的基因主导的,并且有来自所有基因的大致相同的贡献,我们在rlog转换的数据上使用它
抽样检验员<- dist(t(分析(rld)))抽样检验员
## SRR1039508 SRR1039509 SRR1039512 SRR1039513 SRR1039516 SRR1039517 SRR1039520 37.35231 50.07638 ## SRR1039516 41.49280 43.61052 ## SRR1039516 41.98797 53.58929 40.99513 57.10447 ## SRR1039517 37.06633 51.80994 34.86653 52.54968 43.2178657.13688 ## SRR1039521 56.04254 41.46514 51.90045 34.82975 58.40428 47.90244 44.78171
注意使用函数t来转置数据矩阵。我们需要这样做,因为dist计算数据行之间的距离,我们的样本构成列。
我们使用heatmap函数在热图中可视化样本到样本的距离。2来自gplot包。注意,我们更改了距离矩阵的行名,使之包含治疗类型和患者编号,而不是样本ID,这样在查看热图时就可以看到所有这些信息。
图书馆(“GPLOTS”)库(“RCHRORBREWER”)SAMPLEDISTMATRIX < - AS.MATRIX(SAMPLEDISTER)Rownames(SAMPLEDISTMATRIX)< - PERTE(RLD $ DEX,RLD $ CELL,SEP =“ - ”)颜色< - 托罗拉水壶(REV(Brewer.pal(9,“蓝调”))))(255)HC < - HCLUST(SAMPLEDISTER)HEATMAP.2(SAMPLEDISTMATRIX,ROWV = AS.DENDORGRAM(HC),SYMM = TRUE,TRACE =“无”,COL =颜色,MARGINS = C(2,10),Labcol = false)
可视化样本到样本距离的另一种方法是主组件分析(PCA)。在这种顺序方法中,数据点(即,这里,样本)被投影到2D平面上,使得它们在两个方向上展开,该方向解释数据的大多数差异。X轴是将数据点最多的方向(或主成分)。沿轴标签印刷在方向上的总方差的量。在这里,我们使用了Deseq2的功能Plotpca。IntGroup指定的两个术语是标记样本的有趣组;他们讲述功能使用它们选择颜色。
plotPCA(rld, intgroup = c("dex", "cell"))
另一个图,非常类似于PCA图,可以使用基r中的多维尺度(MDS)函数来制作。当我们没有原始数据,只有距离矩阵时,这是有用的。这里我们有从rlog转换计数计算出的距离的MDS图:
库(GGPlot2)MDS < - data.frame(cmdscale(sampledistmatrix))mds < - cbind(mds,coldata(rld))qplot(x1,x2,color = dex,shape = cell,data = as.data.frame(MDS)))
我们看到细胞之间的差异是相当大的,尽管与用地塞米松治疗引起的差异不强。这表明通过使用配对的设计('配对'在差分测试中解释这一点是重要的,因为每个DEX处理的样品与来自同一细胞系的一个未处理的样品配对)。我们已经通过在开头设置数据对象时使用设计公式〜Cell + DEX来设置。
有很多详细的分析见
-案例研究-如何建立一个总结的实验-气道数据集
-使用机器学习技术探索数据
如果您喜欢此实验室并希望在此领域了解更多信息,请不要错过BioC2015的以下实验室
sessionInfo ()
sessionInfo ()
## R版本3.2.1(2015-06-18)##平台:x86_64-unknown-linux-gnu(64位)##运行于:Ubuntu 14.04.2 LTS ## ## locale: ## [1] LC_CTYPE=en_US。utf - 8 LC_NUMERIC = C而= en_US。UTF-8 ## [4] LC_COLLATE=C LC_MONETARY=en_US。utf - 8 LC_MESSAGES = en_US。UTF-8 ## [7] LC_PAPER=en_US。UTF-8 LC_NAME=C LC_ADDRESS= c# # [10] LC_TELEPHONE=C LC_MEASUREMENT=en_US。UTF-8 LC_IDENTIFICATION=C ## ## attached base packages: ## [1] stats4 parallel stats graphics grDevices utils datasets methods base ## ##其他attached packages:# # # # [1] RColorBrewer_1.1-2 gplots_2.17.0 [3] DESeq2_1.9.23 RcppArmadillo_0.5.200.1.0 # # [5] Rcpp_0.11.6 airway_0.103.1 # # [7] Rattus.norvegicus_1.3.1 org.Rn.eg.db_3.1.2 # # [9] GO.db_3.1.2 OrganismDbi_1.11.42 # # [11] BSgenome.Rnorvegicus.UCSC.rn5_1.4.0 BSgenome_1.37.3 # # [13] rtracklayer_1.29.12 TxDb.Rnorvegicus.UCSC.rn5.refGene_3.1.3 # # [15]org.Hs.eg.db_3.1.2 RSQLite_1.0.0 # # [17] DBI_0.3.1 TxDb.Hsapiens.UCSC.hg19.knownGene_3.1.3 # # [19] GenomicFeatures_1.21.13 AnnotationDbi_1.31.17 # # [21] AnnotationHub_2.1.30 RNAseqData.HNRNPC.bam.chr14_0.7.0 # # [23] GenomicAlignments_1.5.11 Rsamtools_1.21.14 # # [25] Biostrings_2.37.2 XVector_0.9.1 # # [27] SummarizedExperiment_0.3.2 Biobase_2.29.1## [29] GenomicRanges_1.21.16 GenomeInfoDb_1.5.8 ## [31] iranges_1 . 2.14 S4Vectors_0.7.10 ## [33] BiocGenerics_0.15.3 ggplot2_1.0.1 ## [35] BiocStyle_1.7.4 ## ##通过命名空间加载(未连接):## [1] bitops_1.0-6 httr_1.0.0 tools_3.2.1 ## [4] r6_1 .1.0 kernsmooth_1 .23-15 rpart_1 .1-10 ## [7] Hmisc_3.16-0 colorspace_1.2-6 nnet_7.3-10 ## [10] gridExtra_2.0.0 curl_0.9.1 graph_1.47.2 ## [13] formatr1.2 labeling_0.3 caTools_1.17.1 ## [19] scales_0.2.5 genefilter_1.51.0 RBGL_1.45.1 ## [19] stringr_1.0.0 digest_0.6.8 foreign_0.8-65 ## [22]rmarkdown_0.7 htmltools_0.2.6 BiocInstaller_1.19.8 ## [25] shiny_0.12.1 BiocParallel_1.3.34 gtools_3.5.0 ## [28] acepack_1.3-3.3 RCurl_1.95-4.7 magrittr_1.5 ## [31] Formula_1.2-1 -1 fuger_1 .4.1 munsell_0.4.2 ## [34] proto_0.3-10 stringi_0.5-5 yaml_2.1.13 ## [37] MASS_7.3-43 zlibbioc_1.15.0 plyr_1.8.3 ## [40] grid_3.2.1 gdata_2.17.0 lattice_0.20-33 ## [43] splines_3.2.1 annotate_1.47.1 locfit_1.5-9.1 ## [46] knitr_1.10.5 geneplotter_1.47.0 reshape2_1.4.1 ## [49] codetools_0.2-14 biomaRt_2.25.1 futile.options_1.0.0 ## [52] XML_3.98-1.3 evaluate_0.7 latticeExtra_0.6-26 ## [55] lambda.r_1.1.7 httpuv_1.3.2 gtable_0.1.2 ## [58] mime_0.3 xtable_1.7-4 survival_2.38-3 ## [61] cluster_2.0.2 interactiveDisplayBase_1.7.0