【发布时间】:2017-11-10 22:25:32
【问题描述】:
我想生成一个数据帧 hminput,其中包含来自不同较小数据帧(名为 frqAFR、frqAMR、.. 等,如下所示)的 3 个参数。因此,与其单独编写所有代码来提取每一列的三列,然后逐列绑定它们,然后逐行绑定,我想知道是否可以使用带有列表中字符串的 for 循环对其进行一些优化。
所以,到目前为止,这是我的想法:
listpop<-c("frqAFR","frqAMR","frqEUR","frqEAS","frqSAS","frqAFROURU","frqIND")
for (g in listpop) {
hminput<- rbind(cbind(paste(g)["SNP"],paste(g)["POP"],paste(g)["MAF"]))
}
但它会生成一个带有三个 NA 的 hminput 数据帧。 有什么想法吗?谢谢!
期望的输出:
hminput
snp1 pop1 maf1
snp2 pop2 maf2
snp3 pop3 maf3
...
【问题讨论】:
-
我实际上并没有得到你的输入结构是什么样的,以及你在 for 循环中做了什么。但是,我觉得您需要
rbind中的hminput。像rbind(hminput, cbind(paste(g).....??我相信有更有效和更简单的方法来做到这一点。