gpt4 book ai didi

r - 将对象名称传递给 do.call() 函数

转载 作者:行者123 更新时间:2023-12-05 00:26:59 30 4
gpt4 key购买 nike

有没有办法将对象名称传递给 do.call() 函数?

例如:

#First make a function that will return the name of object itself.
PrintObjectName <- function(obj){
print(deparse(substitute(obj)))
}

data(iris)

PrintObjectName(iris)
[1] "iris" #This is what I want

do.call(what="PrintObjectName", args=list(obj=iris))
#The output is a messy stuff

最佳答案

您想使用 alist在您调用 do.call .
alist处理它的参数,就好像它们描述了函数参数一样。所以这些值没有被评估

do.call(what="PrintObjectName", args=alist(obj=iris))
# [1] "iris"

或者你可以使用 quote
do.call(what="PrintObjectName", args=list(obj=quote(iris)))

关于r - 将对象名称传递给 do.call() 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21472533/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com