在R中,如何获取输入变量名称

时间:2016-09-02 17:47:09

标签: r variables

以下代码。

  func <- function(x){ 
print( paste(substitute(x)) )
 } ; 
func(x[])

如果我运行func(x),代码打印“x”输出,但如果我像func(x [])或func(x $ y)一样运行,则无法打印“x []”或“x $”你出去了。如何获得正确的输入字符串?谢谢。

类似的例子就像plot()函数,当我使用plot(x $ y)时,ylab是“x $ y”。当我使用plot(x [])时,ylab是“x []”。当我使用情节(1:20)时,ylab是“1:20”。

1 个答案:

答案 0 :(得分:1)

同时使用deparse

func <- function(x){
    deparse(substitute(x))
}

给出了

> func(x[1])
[1] "x[1]"
> func(x[])
[1] "x[]"