deparse(substitute)
的组合似乎很有用。但是,如何将其用于几个字符串。
工作示例:
print_name<-function(x){
x<-deparse(substitute(x))
print(x)
}
我该如何针对此类工作?
print_name<-function(x,...){
x<-deparse(substitute(x))
y<-deparse(substitute(...))
print(x)
print(y)
}
print_name(Peter,John,Alice)
以上内容几乎可以正常工作,只是它停在(on?)John。如何使它适用于所有名称。那是彼得,约翰,爱丽丝的版画。 谢谢!
答案 0 :(得分:2)
您可以做到
print_name<-function(x,...){
x<-deparse(substitute(x))
y<-sapply(substitute(...()), deparse)
print(x)
print(y)
}
print_name(Peter,John,Alice)
# [1] "Peter"
# [1] "John" "Alice"
如果我们执行substitute(...())
,我们将得到所有符号的类似列表的对象,然后将它们套在它们上面,即可将每个符号转换为字符值