我正在尝试将paste0与merge一起使用,这样我就可以在循环中合并一堆东西。但是,我在从data.frames调用特定列时遇到问题
为了说明,我将使用头
示例:
df <- data.frame(x=1:10,y=1:10)
head(df)
x y
1 1 1
2 2 2
3 3 3
4 4 4
5 5 5
6 6 6
head(get("df"))
x y
1 1 1
2 2 2
3 3 3
4 4 4
5 5 5
6 6 6
head(df$x)
[1] 1 2 3 4 5 6
head(get("df$x"))
Error in get("df$x") : object 'df$x' not found
有没有办法获得特定的专栏?
答案 0 :(得分:1)
函数get
查找环境中定义的对象。如果未指定环境,则默认为全局工作区。
您需要使用df
强制as.environment
进入环境,然后使用此环境调用get,例如:
get("x", as.enviroment(get("df")))