c语言sscanf函数的用法是什么
338
2022-09-25
minfi 分析甲基化芯片数据-数据导入篇
minfi 是一个用于分析DNA 甲基化芯片的R包。官网如下:
data。对于minfi 来说,其设计思路是通过读取SampleSheet.csv 文件,在事先约定好的目录结构中查找所有样本的原始数据,来自动化的读取所有样本的信息。
在illumina 的官方网站,我们可以找到对应的SampleSheet 文件的模板和测试数据集
850K:
:
芯片的SampleSheet.csv 模板示例如下:
在SampelSheet 文件中, 开头的几行是注释信息,[Data] 下面的样本的基本信息。
一张甲基化芯片上最多可以有12个样本,每个样本根据Sentrix_Position 标识, 当样本个数大于12个时,必然需要另外一张芯片,对于每张芯片,使用Sentrix_ID标识。minfi 就是通过 Sentrix_ID 和 Sentrix_Position 这两个字段来查找样本的原始数据。
对于每个样本,会有两个.idat 文件,基于示例的SampleSheet.csv 文件,对应的文件名称为
200514040030_R01C01_Grn.idat200514040030_R02C01_Red.idat
我们只需要整理成如下所示的目录结构就可以了
SampleSheet.csvSentrix_ID/├── Sentrix_ID_Sentrix_Position.Grn.idat└── Sentrix_ID_Sentrix_Position.Red.idat
SampleSheet.csv 文件在第一层,然后是每张芯片对应的的Sentrix_ID 是一个目录,在每个Sentrix_ID目录下,是该芯片上样本的原始数据,文件名称为 Sentrix_ID_Sentrix_Position.Grn.idat这种格式。
minfi 读取数据
整理SampleSheet.csv 文件和对应的目录结构之后,就可以在R中进行读取了。
read.metharray.sheet 函数读取SampleSheet.csv 文件, 第一个参数为该文件所在的目录,第二个参数为文件的名称,支持正则表达式,如果不习惯正则,直接指定为对应的文件名称就好了。
read in the sample sheet for the experimenttargets <- read.metharray.sheet(dataDirectory, pattern=”SampleSheet.csv”)
read.metharray.exp 函数读取样本的.idat 文件,参数read.metharraty.sheet返回的对象
read in the raw data from the IDAT filesrgSet <- read.metharray.exp(targets=targets)
通过上面两步,就实现了数据的读取。
总结
SampleSheet.csv文件中的Sentrix_ID标识每张芯片,Sentrix_Position标识芯片上的每一个样本,通过这两个字段的信息,可以得到对应的文件名称。原始下机数据的目录结构都是满足minfi 的要求的,对于不符合要求的情况,比如从GEO 数据库下载的芯片数据,我们只有.idat 文件,可以根据样本信息构造出SampleSheet.csv 文件,然后再使用 minfi 进行读取;
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~