3

所以我有一个数据框(称为 SNPlist),它的尺寸为 1 x 500000(逐列)。我希望 SNP 列表成为我的数据帧(称为数据)的列名,其维度为 100 x 500000。我已经尝试过colnames(Data) <- SNPlist,但它似乎不起作用。任何人都可以帮助解决这个问题吗?

谢谢

4

3 回答 3

3

如果SNPlist是 a data.frame,那么您需要指向它的第一行:

colnames(Data) <- SNPlist[1, ]

如果它是向量,那么您尝试过的方法会起作用

于 2013-07-23T23:56:37.183 回答
0

问这个问题已经有一段时间了,但我注意到没有人建议什么对我有用: colnames(Data) <- colnames(SNPlist)

阿莫斯

于 2021-05-22T18:39:05.407 回答
0

我在这方面遇到了很多麻烦,因为通常的方法(上面由 alexwhan 提供)没有完成。我最终解决了这个问题,首先vector从旧数据帧中取出一个标题,然后使用该names函数将它贴在新数据帧上。

names(new_DF) <- as.character(apply(old_DF["wanted_header_row", ], 1, paste))

也许这有点多,但这是唯一对我有用的东西。

于 2015-10-15T08:46:43.027 回答