从字符串中引用 R 数据框列名
Reference R data frame column name from string
在ggplot()中,你可以在aes()中使用列名作为引用:
p <- ggplot(mtcars, aes(wt, mpg))
p + geom_point()
我将列名称存储为字符串。是否可以将字符串切换为 R 中的列名引用?
# This doesn't work
var1 = "wt"
var2 = "mpg"
p <- ggplot(mtcars, aes(var1, var2))
p + geom_point()
您可以使用 get()
命令访问变量,如下所示:
var1 = "wt"
var2 = "mpg"
p <- ggplot(data=mtcars, aes(get(var1), get(var2)))
p + geom_point()
输出:
get
是一种使用字符串调用对象的方式。例如
e<-c(1,2,3,4)
print("e")
[1] "e"
print(get("e"))
[1] 1 2 3 4
print(e)
[1] 1 2 3 4
identical(e,get("e"))
[1] TRUE
identical("e",e)
[1] FALSE
在ggplot()中,你可以在aes()中使用列名作为引用:
p <- ggplot(mtcars, aes(wt, mpg))
p + geom_point()
我将列名称存储为字符串。是否可以将字符串切换为 R 中的列名引用?
# This doesn't work
var1 = "wt"
var2 = "mpg"
p <- ggplot(mtcars, aes(var1, var2))
p + geom_point()
您可以使用 get()
命令访问变量,如下所示:
var1 = "wt"
var2 = "mpg"
p <- ggplot(data=mtcars, aes(get(var1), get(var2)))
p + geom_point()
输出:
get
是一种使用字符串调用对象的方式。例如
e<-c(1,2,3,4)
print("e")
[1] "e"
print(get("e"))
[1] 1 2 3 4
print(e)
[1] 1 2 3 4
identical(e,get("e"))
[1] TRUE
identical("e",e)
[1] FALSE