T检验在R中发现差异表达的基因

时间:2012-08-28 11:59:01

标签: r

我有一个包含基因和mrna的矩阵。

ID_REF    GSM362168 GSM362169 GSM362170 GSM362171 GSM362172 GSM362173 GSM362174      
244901_at   5.171072  5.207896  5.191145  5.067809  5.010239  5.556884  4.879528      
244902_at   5.296012  5.460796  5.419633  5.440318  5.234789  7.567894  6.908795

我想用t检验从基质中找到差异表达的基因,我进行了以下操作。

stat=mt.teststat(control,classlabel,test="t",na=.mt.naNUM,nonpara="n")   

我收到以下错误

Error in is.factor(classlabel) : object 'classlabel' not found.

我不确定如何分配类标签。这是找到差异表达基因的正确方法。

classlabel应该是对应于观察(列)类标签的整数向量。我不明白那是什么。

1 个答案:

答案 0 :(得分:1)

如果您打开mt.teststat的文档:

?mt.teststat

并向下滚动到最后,您将看到使用“Golub数据”的示例:

data(golub)
teststat <- mt.teststat(golub, golub.cl)

如果你看一下 golub.cl ,就会清楚 classlabel 向量应该是什么样子:

golub.cl
 [1] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1

在这种情况下,0或1是两类样本的标签。矢量中的值应与样本一样多,其顺序与样本在数据矩阵中的显示顺序相同。您还可以查看:

?golub
  

golub.cl:指示肿瘤类别的数字向量,27急性             淋巴细胞白血病(ALL)病例(代码0)和急性期11例             骨髓性白血病(AML)病例(代码1)。

所以你需要创建一个类似的向量,带有标签(0,1,...),无论你有多少类用于你自己的数据。