基于Epiviz整合的Minfi甲基化分析

摩根沃尔特,HéctorCoradaBravo

2016-06-22

介绍

本研讨会的目的是作为分析450k Illumina人类甲基化数据的指导,以发现碱基对和区域水平甲基化的差异。我们将使用先前关于差异甲基化位点的研究结果,观察不同实体组织样本之间的TRIM29基因和其他转录调控因子,包括乳腺(BRCA)、结肠(COAD)和肺(LUSC),以及正常和肿瘤乳腺(BRCA)样本之间的差异甲基化位点。

我们将主要使用minfiepivizr在Bioconductor包。的minfi包装用于识别差异甲基化的位置,区域和块。的epivizr包用于将R中生成的数据提供给一个Epiviz交互式可视化工作区。该方案旨在对来自癌症基因组图谱(TCGA)项目的Illumina Infinium人类甲基化450k数据进行分析和可视化。

这是要遵循的一般过程:
过程

动机

正常人乳腺上皮和乳腺癌中的组织特异性DNA甲基化(Avraham等,2014)

Avraham等人的研究结果。2014年,结论是,含三方基质的29(TRIM29),也称为共济失调的Telanciectasia D-Comproding(ATDC),具有不同癌症类型的不同功能。在乳腺癌中,Trim29的表达小于正常乳腺组织中的表达,并且它用作肿瘤抑制剂。该基因的启动子是在正常乳腺组织中的甲基化,但在其他正常组织中的超甲基化,如结肠,肺和子宫内膜,其中致癌物质。在肿瘤乳腺组织中,与正常乳腺组织相比,甲基化增加和表达降低。在其他癌症类型与其各自的正常组织之间的比较中,观察到相反的甲基化模式1

研究人员发现,与所有其他上皮组织相比,乳房中的110个基因甲基化程度有所不同。在这110个基因中,有15个是DNA结合和转录调节因子,它们被发现与癌症显著相关。他们对这些基因(包括ALX4、GATA5、MGMT、NEUROG1、SOX10、SREBP1、ST18、TRIM29和TP73)的TCGA数据进行了分析,发现正常和肿瘤乳腺样本中大部分相应位点的甲基化差异。甲基化模式在乳腺癌类型(包括基础型、luminal-A型和luminal-B型)和不同的正常组织类型之间也有所不同,将这些基因区域识别为差异甲基化区域(DMRs)。TRIM29基因在转录起始位点有一个CpG岛(11号染色体120,008,000到120,009,000之间)1

在乳腺组织中,我们发现这个CpG岛是低甲基化的甲基化,而在其他组织中,包括结肠和肺,它是完全甲基化的。这些结果是在分析Illumina-Infinium HumanMethylation27阵列数据时发现的。TRIM29在正常乳腺组织中的表达高于其他正常组织。作者提出的主要结论是,“表观遗传改变影响组织特异性分化是表观遗传改变导致癌症的主要机制。1在该方案中,我们将概述这些发现中的一些,并使用交互式可视化来探索这些数据中的其他发现。

收集和预处理数据

该方案使用的数据是来自癌症基因组图谱(TCGA)项目的450k Illumina人类甲基化数据。为了分析数据并准备在Epiviz可视化,它必须首先加载到r .我们用四种不同的450 k样本,如下图表所示,这之间的甲基化分析可以做三个正常样本和正常和肿瘤BRCA样本,分别。

癌症类型 组织 #正常样本 #肿瘤样本
BRCA 胸部 15 15
co 冒号 15 0
Lusc. 15 0

附带的小插图data_preprocessing.rmd.包含有关如何下载和预处理本研讨会中使用的数据的信息。所定义的类中的对象是最终结果minfi:

数据输入 处理功能 输出
原始数据(IDAT文件) 阅读.450k.exp. RGChannelSet
RGChannelSet preprocessIllumina MethylSet
MethylSet maptogenome. 基因组甲基四
基因组甲基四 ratioConvert Genomicratioset

在这次研讨会上,我们把这些染色体分为10号、11号和20号:

图书馆(Workshopbioc2016)
##加载所需的包:epivizr
##加载所需的包:minfi
##加载所需包装:生物根系
##加载所需包:并行
## ##附加包装:'Biocgenerics'
##以下对象屏蔽“package:parallel”:## ## clusterapply,clusterapplylb,clustercall,clusterevalq,## clusterexport,clustersmap,parapply,parcapply,parlapply,## parlapplylb,parrapply,parsapply,parsapplylb
##以下对象被屏蔽'package:stats': ## ## IQR, mad, xtabs
##以下对象被屏蔽'包:基础':## ##过滤器,查找,映射,位置,缩减,任何数据拼接,附加,## as.data.frame,cbind,colnames,do.call,重复,复制,eval,## evalq,get,grep,grepl,相交,是.unsorted,lapply,##长度,mapply,match,mget,订单,粘贴,pmax,pmax.int,## pmin,pmin.int,等级,Rbind,Rownames,sapply,setdiff,sort,##表,绑架,联盟,唯一,unsplit,它,zhi.comx,## a.Min
##需要装载的包:Biobase
##欢迎来到Biocumon #### Vignettes包含介绍性材料;与##'Browsevignettes()'查看。为了引用生物导体,请参阅##'引文(“Biobase”)',以及包装的引文(“PKGNAME”)'。
##加载所需包装:格子
##加载所需的包:基因组范围
##加载所需的包:stats4
##加载所需包:S4Vectors
## ##附加包:'S4Vectors'
##以下对象从“包:基础”屏蔽:## ## Colmeans,Colsums,expant.grid,rowmeans,Rownums
##需要装载的包装:伊朗
##加载所需包:GenomeinfodB
##加载所需包:摘要化
##加载所需的包:生物过度
##加载所需包:XVector
##加载所需的包:bumphunter
##加载所需包:foreach
##加载所需的包:迭代器
##加载所需包:LocFit
## locfit 1.5-9.1 2013-03-22
# #设置选项(“download.file.method.GEOquery”=“汽车”)
##设置选项('geoquery.inmemory.gpl'= false)
数据(meth_set)数据(gm_set)数据(gratio_set)meth_set
## methyLset(StorageMode:LockedEnvironment)## AssayData:63561功能,60个样本##元素名称:meth,unmeth ##类'AnnotatedDataFrame'## Samplenames:2 3 ... 104(60总计)##varlabels:bcr_patient_barcode bcr_sample_uuid ... ## uperte.targeted_molecular_therapy(总计222)## Varmetadata:Labeldescription ## Annotation ## Array:IlluminahumanMethylation450K ##注释:ILMN12.hg19 ##预处理##方法:Illumina,BG.Correct = True,Normalize =控件,参考= 1 ## MINFI版本:1.18.2 ##清单版本:0.4.0
gm_set
## class: genome methylset ## dim: 63561 60 ## metadata(0): ## assays(2): Meth Unmeth ## rownames(63561): cg23934071 cg06848711…cg10320659 cg04181701 ## rowData names(0): ## colnames(60): 2 3…101 104 ## colData names(222): bcr_patient_barcode bcr_sample_uuid…# #病人。anatomic_neoplasm_subdivision_other # #病人。##注释##数组:IlluminaHumanMethylation450k ##注释:ilmn12。##预处理##方法:Illumina, bg。correct = TRUE, normalize = controls, reference = 1 ## minfi version: 1.18.2 ## Manifest version: 0.4.0
gratio_set.
##类:Genomicratioset ## Dim:63561 60 ##元数据(0):##测定(2):Beta CN ## Rowname(63561):CG23934071 CG0684871 ... CG10320659 CG04181701 ## RowData名称(0):##Colnames(60):2 3 ... 101 104 ## COLDATA名称(222):BCR_PATINE_BARCODE BCR_SAMPLE_UUID ... ## DEASTE.ANATOMIC_NEOPLASM_SUBDIVISICION_HOTHS ## DESTRE.TARGATED_MOLECULAL_THERAPACY ##注释##数组:ILLIMEAHUMANMETHATION450K ##注释:ILMN12。HG19 ##预处理##方法:Illumina,BG.CorRect = True,Normalize =控件,参考= 1 ## Minfi版本:1.18.2 ##清单版本:0.4.0

DMP可视化

Epiviz工作区和托管数据

对于此分析,我们将显示我们的分析数据以及Maryland大学的服务器上托管的上下文数据,包括来自基因表达条形码项目的基因注释,CPG岛地点和基因表达。这些预先存在的工作区与Timp等人类似的工作区类似。2014年,包括大型缺氧块的可视化2可用AT.http // epiviz.github.io / timp2014。我们将首先探索一些措施来获得可视化的类型和分析我们可以执行的分析。

我们创建了您可以使用此研讨会的工作空间。当然,您还可以创建以下这些步骤:

您的工作空间现在将在您的帐户下保存,并将其他人访问,因为URL特定于每个工作区(例如http://epiviz.cbcb.umd.edu/?ws= < workspace_id >)。最终的工作空间应与此类似:

启动Epiviz Workspace.

启动Epiviz Workspace.

开始Epizr会话

我们现在可以使用托管数据开始与工作空间的Epiviz连接,我们可以在我们进行分析时添加图。启动我们提供的Epiviz工作空间(或您创建的人)

图书馆< - (epivizr)应用startepiviz(工作区=“kr0MpYk4g0u”,try_ports =真的)

如果您创建了自己的工作区,请将其id作为工作空间争论。

应用程序对象用作r会话与epiviz交互式可视化应用程序之间的接口。我们可以使用它来获取有关可用图表,设置,当前位置的信息。我们也可以使用它来导航到特定的基因组位置。我们将在研讨会过程中看到这些。

例如,要了解Epiviz Web应用程序中可用的图表类型,我们可以使用app $ chart_mgr $ list_charts()方法。

差异甲基化位置(DMP)分析

Minfi的主要功能用于找到差异甲基化位置是“DMPFINDER”。它使用CPG的单一探针分析在两种或多种表型组表型之间找到甲基化差异和T检测(或F-TEST),以确定差异甲基化的CPG位置(在BRCA正常和肿瘤样品之间的这种情况下)。

在我们进行此分析之前,我们可能希望添加一个轨道,显示出基因的启动子区域,因为我们可能想要区分发起人内的DMP。我们将使用Biocucton Annotation基础架构来执行此操作。

图书馆(基因组法)图书馆(txdb.hsapiens.ucsc.hg19.knowngene)启动子_regions < -启动子(TxDb.Hsapiens.UCSC.hg19.knownGene上游=1000,下游=200.)promoters_track < -应用$阴谋(启动人员,datasource_name =“家族”)

促销员_track.对象用作我们刚刚添加到Epiviz Workspace的特定轨道的接口。我们可以通过对象更改曲目设置。让我们首先找出可用于修改此曲目的设置。要这样做,我们使用Promoteers_track $ print_info()

让我们更改曲目颜色以将其与先前添加的CPG轨道区分开来:美元promoters_track集(颜色= c (" # FFFFFF "))

现在,我们准备执行minfi分析。

图书馆(doParallel)芯< -探测器()registerDoParallel(核心)meth_set_breast < -meth_set [,哪一个(meth_set $ cosids ==“胸部”dmp < -))DMPFinder.(meth_set_breast,meth_set_breast $ status,类型=“分类”)(dmp)

现在我们看到探针(CPG位置),显示差异甲基化以及它们的相关统计数据。让我们首先添加一个曲目,显示这些CPG的位置到我们的会话。

dmp_gr < -隆重(gm_set [rownames(DMP),])DMPS_TRACK < -应用$阴谋(DMP_GR,datasource_name =“差异甲基化的位置”)

在epiviz应用程序中,您可以使用悬空功能来探索dmp如何根据热图中的表达与启动子、CpG岛或基因进行空间关联。

现在让我们绘制甲基化图来看看我们刚刚绘制的每个组织类型和状态的基因组的统计推断。

首先,我们计算每组样品的平均甲基化

贝塔< -getbeta.(gratio_set) pd < -pData(gratio_set fac < -)粘贴(PD $组织,PD $ State,SEP =”:“) sample_indices < -分裂(seq(len =nrow(PD)),FAC)平均值< -s(sample_indices,function(ind)划船(betas [,Ind]))

现在我们有一个矩阵,每个样本的平均甲基化,我们将用于创建我们的轨道。让我们创造一个农庄将这些值中的每一个映射到相应的探针基因组位置的对象。最后,将这些值添加为行轨道。

cpg_gr < -隆重(gm_set)mcols(cpg_gr)< -mean_betas beta_track < -应用$阴谋(cpg_grdatasource_name =“百分比甲基化”,类型=“英国石油公司”,设置=列表(一步=1,插值=“基础”)))

绘制这些dmp的另一个有用的轨迹是统计检验得出的p值。我们把它画成a堆积林蛋糕。首先,我们将p值添加到农庄我们正在使用的对象。

dmp_gr $ pval < --log10(DMP $ PVAL)

这一次,我们正在绘制一些不同的东西。的阴谋方法做了两件事:首先,它注册我们在epiviz中作为数据源传递给它的数据对象,然后使用默认的为该数据类型定义的图表类型。

一个重要的部分epivizr设计是分离数据和图:您可以从相同的数据对象中制作多个图表,而无需多次复制数据。这样,当您在应用数据中导航时,通过数据对象进行数据查询,而不是每个图表,导致更响应的应用程序。此外,这允许用户创建包含远程托管的R会话和数据的数据的图表。

因此,由于我们将使用不是默认图表类型的“StackedLineTrack”,所以我们需要按顺序执行这两个步骤。

#首先将GRanges对象声明为数据源gr_obj < -app $ data_mgr $add_measurements(DMP_GR,“pvalues”,类型=“英国石油公司”,列=“pval”)#然后添加轨道pvals_track < -app $ chart_mgr $可视化(“StackedLineTrack”,datasource =gr_obj)

最后,让我们添加一个BRCA甲基化的MA图,以可视化甲基化差异是如何在探针之间分布的。当然,我们可以通过在R中添加甲基化差异和平均值作为我们正在使用的“genome sranges”对象的额外列来做到这一点。但是,我们也可以使用epiviz的“计算测量”特性来实现这一点。

  • 使用“计算测量”创建现有数据的绘图,x轴显示平均甲基化,y轴显示正常和肿瘤样本之间甲基化的差异
  • 在Epiviz中创建MA图的进一步说明可以在这里找到:Epiviz .github.io/ computedmeasurement .html

现在我们已经添加了所有这些轨道,让我们导航到TRIM29基因位置来检查上面讨论的结果。你可以放大来更近距离观察TRIM29启动子CpG岛的甲基化差异。

应用$导航(“chr11”,119870000,120100000)

最终的DMP可视化工作区应该是这样的:
DMP可视化

让我们在下一节关闭与epiviz应用程序的连接。

应用$stop_app()

差异甲基化区域分析

让我们从相同的初始工作区开始。

应用< -startepiviz(工作区=“kr0MpYk4g0u”,try_ports =真的)

并添加先前添加的启动子区域和平均甲基化轨迹。

Liginer_track < -应用$阴谋(启动人员,datasource_name =“家族”)beta_track < -应用$阴谋(cpg_grdatasource_name =“百分比甲基化”,类型=“英国石油公司”,设置=列表(一步=1,插值=“基础”)))

接下来,使用Minfi的bumphunter功能来发现差异甲基化区域,这是正常和肿瘤乳腺组织之间在基因启动子规模(1-2kb)上相对较小的CpG位点簇甲基化的偏差。bumphting使用一个截止值来确定甲基化差异的大小,以识别差异甲基化区域(DMR)。

#First乳房样本gratio_set_breast < -gratio_set [,哪一个(gratio_set组织美元= =“胸部”#制作一个设计矩阵来使用bumphunter< -状态pData(gratio_set_breast)国防部< -美元地位Model.Matrix.(〜状态)#群集CPG进入持有潜在DMR的区域gr < -隆重(gratio_set_breast)chr < -as.factor.(seqnames(gr)) pos < -开始(gr)cl < -clusterMaker(CHR,POS,maxgap =500.)#发现dmr颠簸< -Bumphunter.(国防部gratio_set_breast集群=CL,截止=0.1,B =0)

让我们添加一个包含结果dmrs的轨道。我们将根据我们找到的dmr的类型为轨道上的块着色。为此,我们将创建一个数据源,一个用于低甲基化DMRs,一个用于超甲基化DMRs。

# DMRS的类型分类dmr_gr < -(颠簸$桌子,农庄(chr,绞喉(开始,结束),面积=区域,价值=值))dmr_gr $ < -类型如果别的(腹肌(dmr_gr价值美元)<0.1,“两者都不”,如果别的(DMR_GR $ VALUE <0,“hypo”,“超”)))桌子(美元dmr_gr类型)#为每个DMR类型制作一个granges对象Hyper_gr < -dmr_gr [dmr_gr $ type = =“超”] hypo_gr < -dmr_gr [dmr_gr $ type = =“hypo”]在epiviz上添加一个数据源hypo_ds < -app $ data_mgr $add_measurements(hypo_gr“hypo dmrs”)hyper_ds < -app $ data_mgr $add_measurements(hyper_gr,“超级DMRS”)#添加轨道测量< -c(hypo_ds $get_measurements(),hyper_ds $get_measurements())dmr_track < -app $ chart_mgr $可视化(“BlocksTrack”,测量=测量)

练习:从基因表达条形码中添加乳腺正常和肿瘤基因表达的MA图,以可视化重要的基因表达差异。使用与DMP可视化部分相同的方法,但使用BRCA正常和肿瘤类型的基因表达数据,而不是DNA甲基化数据。

为了将此协议中创建的可视化结果与之前的研究结果进行比较,让我们使用幻灯片方法epivizr仔细看看感兴趣的基因。在这种情况下,我们将检查子集DNA结合和转录调节基因,其中Avraham等人已发现甲基化的差异。(ALX4,GATA5和MGMT)。感兴趣的基因|染色体#|开始|结束------ |---- |--- |--- ALX4 | 11 | 44282278 | 44331716 GATA5 | 20 | 61038553 | 61051026 MGMT | 10 | 131265454 | 131565783

范围< -绞喉(开始=c(44282278,61038553,131265454),结束=c(44331716,61051026.,131565783))范围< -范围*0.5slideshow_regions < -农庄(seqnames =c(“chr11”,“chr20”,“CHR10”),范围=)应用范围幻灯片(slideshow_regions)

对兴趣的另一种分析是通过超甲基化的启动子区的幻灯片区域进行导航,这可能揭示新的有趣调查结果。

hyper_promoters < -subsetByOverlaps(hyper_gr,liginer_regions)o < -命令(-Hyper_promoters $地区)[1:5] top_promoters < -hyper_promoters [o] top_promoters < -top_promoters +10000应用$幻灯片(top_promoters)

结束的DMR可视化工作区应该是这样的:
DMR可视化

让我们在下一节之前停止当前连接:

应用$stop_app()

块发现

让我们再次以相同的基本工作区开始。

应用< -startepiviz(工作区=“kr0MpYk4g0u”,try_ports =真的)

我们将使用MinFi使用的第三分析将基于在乳腺癌中找到更大的甲基化差异(嵌段)。如前所述,让我们添加带有启动子区域和平均甲基化百分比的曲目。

Liginer_track < -应用$阴谋(启动人员,datasource_name =“家族”)beta_track < -应用$阴谋(cpg_grdatasource_name =“百分比甲基化”,类型=“英国石油公司”,设置=列表(一步=50,插值=“基础”)))

让我们再添加一个轨迹显示乳房甲基化在整个基因组中的差异

cpg_gr breast_diff < -美元cpg_gr $乳腺癌-cpg_gr $乳房:正常diff_track < -应用$阴谋(cpg_grdatasource_name =“甲基化β不同”,类型=“英国石油公司”,列=“乳房_diff”,设置=列表(一步=50,插值=“基础”)))

和基因表达MA图如在使用EPIVIZ UI之前。

与Bumphunter相比,Minfi的Blockfinder功能用于在比碰撞狩猎(基因秤代替启动子规模)上的甲基化差异。块查找使用CPGCollapse功能来创建邻近海洋锁定的集群,将它们分组成更大的区域,而不是碰撞狩猎,然后在这些区域的平均值上使用凹凸狩猎以检测大的差异甲基化区域。

CL < -cpgcollapse.< - (gm_set_breast)块Blockfinder.(cl $对象,mod,集群=cl $ blockinfo $ pns,截止=0.1)

让我们添加一段含有低甲基化的轨道。

blocks_gr < -(块表,美元农庄(chr,绞喉(开始,结束),面积=区域,价值=值))blocks_gr $ < -类型如果别的(腹肌(blocks_gr $ value)<0.1,“两者都不”,如果别的(blocks_gr价值<美元0,“hypo”,“超”)))桌子(blocks_gr类型)美元hypo_blocks < - - - - - -blocks_gr [blocks_gr $ type = =“hypo”] hypo_track < -应用$阴谋(hypo_blocksdatasource_name =“乳房Hypo块”)

让我们浏览按宽度排序的块

o < -命令( -宽度(hypo_blocks))[1:5幻灯片_regions < -hypo_blocks [o] *5应用$幻灯片(slideshow_regions)

这些块往往发生在基因贫困地区。让我们看一下可能重叠基因区域的块。

gene_regions < -基因(TxDb.Hsapiens.UCSC.hg19.knownGene列=“gene_id”,single.strand.genes.only =真的)hypo_gene_blocks < -subsetByOverlaps(hypo_blocks,gene.regions)O < -命令(美元-hypo_gene_blocks区)(1:5幻灯片_regions < -hypo_gene_blocks [o] *5应用$幻灯片(slideshow_regions)

独自一人

  1. 添加集群区域中使用的CpG甲基化值的热图Blockfinder.功能。提示:添加对象CL $对象作为数据源,然后使用可视化热线贴图

  2. 为已加载的对象添加曲目或绘图annotationhub.

参考

  1. Avraham A,Cho SS,Uhlmann R,Polak ML,Sandbank J,Karni T等人。(2014)正常人乳腺上皮和乳腺癌中的组织特异性DNA甲基化。PLO一9(3):E91805。DOI:10.1371 / journal.pone.0091805

  2. TIMP W,BRAVO HC,MCDONALD OG,Goggins M,Umbricht C,Zeiger M,Feinberg AP,Irizarry Ra(2014)大型支离甲基化块作为人类实体肿瘤的通用定义表观遗传改变。Genome Med 6(8):61。DOI:10.1186 / s13073-014-0061-y