将 R 函数参数转换为字符串

Ala*_*lan 2 r function

我有一个看起来像的函数

my_function <- function(object)
{
  # code goes here
}
Run Code Online (Sandbox Code Playgroud)

我希望函数(除其他外)打印参数的名称(传递给函数的名称)。所以如果我的函数调用是:

xxx <- my_function(my_object)
Run Code Online (Sandbox Code Playgroud)

那么我想知道如何让函数打印出字符串"my_object"

有人可以帮忙吗?

Gwa*_*Kim 6

一个更-ish 的解决方案是将(获取替代) 与(将符号转换为字符串)结合R使用:substituteobjdeparse

my_function <- function(obj) {deparse(substitute(obj))}
Run Code Online (Sandbox Code Playgroud)

一般元R编程规则:更喜欢substitute

my_function(my_object)
## [1] "my_object"
Run Code Online (Sandbox Code Playgroud)