matlab程序minfilt2,甲基化芯片分析-minfi包

之前学习了ChAMP包来处理甲基化芯片分析的整个常规流程,这个包整合了好多常用工具以及分析算法,对使用者来说非常的便捷;但是从其说明文档来看,对于一些比较基础的过程讲的比较少,作为主要的读入芯片数据那步来说,我还是没明白芯片数据是怎么转化为beta矩阵的,所以我找了minfi包来了解下这个过程。 ChAMP包的读入数据也是利用minfi包的方法,所以两者在这个点上是一致的。minfi包的分析流程结构如下(取自minfi文档):

205d4bec854b039342c1c45581fba447.pngminfi_class.png

从IDAT files到GenomicRatioSet这个可用于下游分析(差异分析)的对象,主要经过RGChannelSet(probe level),MethylSet(CpG locus level),GenomicMethylSet(mapped to genome) or RatioSet(Beta and/or M (logratio of Beta))这些步骤

如果只是简单的使用minfi包,那么步骤如下:

读入IDAT文件,也想ChAMP包一样准备好一个sample_sheet.csv的文件,放在R的当前目录下(该目录下只能有其一个csv文件)

library(minfi)

targets

RGset

pd

annotation(RGset) #查看所会用到的注释文件有哪些

如果没有sample_sheet.csv文件也是可以读入IDAT数据的,只是会没有一些样品信息

对读入后的原始数据进行预处理,bioconductor的minfi处理甲基化数据这篇文章大概列了几种预处理的函数,这里就用Illumina的标准处理(类似于 performed by Genome Studio)

pRGset

mRGset

还有一些标准化函数,如:preprocessSWAN,preprocessQuantile以及preprocessFunnorm,(看着眼熟,原来都整合在ChAMP包里了)

接着转化为GenomicRatioSet对象

dat

最后设置个分组矩阵,然后就是差异甲基化位点分析,比如用下limma包

library(limma)

bate

design

fit

fit2

output

当然minfi中差异分析则不是用limma的,而是dmpFinder函数,下面是文档的例子

dmp

如果是Differential Methylation Regions分析,则使用bumphunter函数

library(doParallel)

detectCores()

registerDoParallel(cores = 6)

design

res

结合上述的过程,如果单纯的简单的分析下差异,minfi包也是可以毫无问题的,如果还需要进行一点质控以及可视化,则需要自行写脚本了;所以如果想方便,那么ChAMP包则是更好的选择吧,过滤啥的都一并处理了,可真省事了。。。

最后推荐一篇博文甲基化特异性区域的计算鉴别,该作者我甚是佩服,进行了多个组学文章分析过程的重现,而且也附上代码,是一个很好的实践教程,这篇则是多形性成胶质细胞瘤(GBM)甲基化分析的文章。

还有一篇也是在上述文章上看到的,bioconductor中甲基化芯片的分析流程: A cross-package Bioconductor workflow for analysing methylation array data,也是一个很好的实践教程,我也打算学习下(最主要主要提供了原始数据!!!)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值