1

我在 linux 操作系统中使用 R 版本 2.15。我有一个由基因 ID 及其特定信号强度值组成的矩阵,如下所示(整个矩阵的子集):

 probes GSM362180    GSM362181  GSM362188    GSM362189  GSM362192
 244901 5.094871713 4.626623079 4.554272515 4.748604391 4.759221647
 244902 5.194528083 4.985930299 4.817426064 5.151654407 4.838741605
 244903 5.412329253 5.352970877 5.06250609  5.305709079 8.365082403
 244904 5.529220594 5.28134657  5.467445095 5.62968933  5.458388909
 244905 5.024052699 4.714631878 4.792865831 4.843975286 4.657188246
 244906 5.786557533 5.242403911 5.060605782 5.458148567 5.890061836

我只想提取第一列,如下所示: ids <- scr[,2] 然后我得到一个因子 [2368]

然后我继续注释如下:

 biocLite("GO.db")
 library("AnnotationDbi")
 biocLite("org.At.tair.db")
 biocLite("ath1121501.db").
 genenames <-  org.At.tairGENENAME[ids] #map the probe ids to the gene names in TAIR

 The output of which is  AnnDbBiMap[1]

 number<-org.At.tairENTREZID[ids] #map the probe ids to the gene ids in TAIR
 The output of which is AnnDbBiMap[1]

 And then I try to merge both the lists as : 
 xx<-toTable(entrez)
 yy<-toTable(number)
 complete<-merge(xx,yy)

我在此步骤中遇到错误,无法继续进行。错误内容如下:

 Error in fix.by(by.y.y): 'by' must specify uniquely valid column(s) 

是因为 ids <- scr[,1] 是一个因素吗?

4

0 回答 0