gpt4 book ai didi

R从函数调用中获取参数名称

转载 作者:行者123 更新时间:2023-12-04 16:44:51 25 4
gpt4 key购买 nike

我想从函数调用中获取参数名称:

testFun <- function(x = 1:20, z = list(a = 1, b = 2)) x %>% sin %>% sum

getArgNames <- function(value) {
# function should return all arguments names - in this case c("x", "z")

}
arg.names <- getArgNames(testFun())

重要的是不要在获取参数名称之前评估函数。有什么想法吗?

最佳答案

使用@Akrun 建议的相同 formalArgs(以及几乎重复的 Get the argument names of an R function ):

getArgNames <- function(value) formalArgs(deparse(substitute(value)[[1]]))

substitute(value) 引用输入,以防止立即求值,[[1]] 从解析的输入中检索函数,deparse 将其转换为 character(因为 formalArgs 可以将函数名称作为 character)。

getArgNames(testFun())

#[1] "x" "z"

关于R从函数调用中获取参数名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50561768/

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