文章目录
ExpressionSet介绍
基因组数据储存在Biobase包内的标准数据结构中。
ExpressionSet类是将多种不同来源的信息整合到一个简便的结构中,它可以被操控,是Bioconduc许多函数的输入或输出对象。
ExpressionSet类包含:
- assayData:微阵列表达数据
- metadata:①phenodata:实验样本的描述;②featuredata:实验所用芯片或技术的特点;③annotation:注释信息
- experimentData:描述实验的一种灵活结构
如何创造一个ExpressionSet
从.CEL和其他文件格式转换
从厂商获得的芯片数据一般为.CEL或其他格式,通常可以用Bioconductor包,例如 affyPLM, affy, oligo, limma, or arrayMagic来读取,将其转换为ExpressionSet或其他类型的对象。
> library(convert)
> as(object, "ExpressionSet")
从零开始自主构建
方法:以微阵列数据为例,通常由以下几部分组成,assay data、sample annotas、feature annotations、 overall description of the experiment,那么分别创建每部分再组装就构成了ExpressionSet。
Assay data
这是最重要的部分,通常为矩阵,含有F行表示芯片的特征(如芯片基因ID),S列表示样本。
一般来说,很可能得到的原始数据格式是制表符分隔文件,使用read.table
进行读取。
dataDirectory <- system.file("extdata", package="Biobase")
exprsFile <- file.path(dataDirectory, "exprsData.txt")
# 创建指向assaydata储存的文件路径
exprs <- as.matrix(read.table(exprsFile, header=TRUE,sep="\t", row.names=1, as.is=TRUE))
# 读取制表符分隔文件,并转换为matrix
检查数据读取是否正确,包括class、dim、colnames、head等函数。
Sample annotation
样本信息(例如,实验条件或参数、研究对象特征(性别、年龄、诊断等))通常作为协变量。注释信息也以表格形式出现,S行样本(与Assay data的列一样),V列协变量。
协变量:在实验的设计中,协变量是一个独立变量(解释变量),不为实验者所操纵,但仍影响实验结果。
pDataFile <- file.path(dataDirectory, "pData.txt")
pData <- read.table(pDataFile, row.names = 1, header = TRUE, sep ="\t")
> identical(rownames(pData),colnames(exprs))
[1] TRUE
需要注意,assay data和sample data的关系,样本应对应一致,否则Expression Set构建会出错。
此外,读取数据时,注意某些协变量应作为连续型变量还是分类变量(或因子)输入,可使用read.table
函数中的colClasses参数调整。(ps. readr包中函数的col_types参数也可用于调整)
研究者又寻思,数据框的协变量列名这么短,很容易表述不清啊?想要更详细的描述怎么办?那我们再创一个专门表述这种信息的metadata数据框不就行了。