2

所以我有很多数据框,我正在尝试合并它们。其中一些采用以下形式:

    sites1  AA1 SA
1   13: C   0.360828
2   14: S   0.017064
3   15: I   0.010810

其他是:

    sites2  AA2 Freq
1   1:  X   0.013
2   1:  S   0.987
3   2:  L   1.000

我有另一个数据框将第一组中的正确数据框与第二组中的正确数据框链接起来,它是这样的:

    V1  V2
1   1JH6    AT4G18930
2   3MXZ    AT2G30410

左边的名字对应一个数据框,右边的名字对应另一个数据框。我正在尝试通过这样做来合并它们

for (i in 1:n){
  name = paste("1",names2[i,2])
  assign(name,merge(names2[i,1],names2[i,2]))
}

但这只是返回一个带有两个名称的数据框。有什么帮助吗?

4

1 回答 1

1

尝试用assign以下内容替换 for 循环中的语句

     assign(name,merge(get(as.character(names2[i,1])), 
                       get(as.character(names2[i,2]))))

此外,请考虑将语句修复name = paste....如下:

   name = paste("T1",names2[i,2], sep="")
   # added sep="" to not have a space.
   # changed the name so that does not start with a number
于 2012-12-03T04:40:16.777 回答