col1 <- c(1, 2, 3)
col2 <- c(4, 5, 6)
col3 <- c(7, 8, 9)
data.frame(col1, col2, col3)
给出
col1 col2 col3
1 1 4 7
2 2 5 8
3 3 6 9
paste0("col", 1:3, collapse=", ")
给出
[1] "col1, col2, col3"
data.frame(paste0("col", 1:3, collapse=", "))
之类的内容构建数据框?答案 0 :(得分:2)
您可能想要使用mget
do.call(cbind, mget(paste0("col", 1:3)))
paste0
生成变量名称的位置,mget
获取相关值,cbind
将它们放在一个数据框中。
答案 1 :(得分:2)
如果我们已经有一个将对象粘贴在一起的字符串,我们可以使用strsplit
拆分字符串并使用mget
获取值。这将返回list
输出。然后用data.frame
换行将其转换为&#39; data.frame`
data.frame(mget(strsplit(str1, ', ')[[1]]))
str1 <- paste0("col", 1:3, collapse=", ")