gpt4 book ai didi

r - 我们如何从子函数中提取外部函数的名称?

转载 作者:行者123 更新时间:2023-12-04 09:31:57 26 4
gpt4 key购买 nike

我在“R”中有三个功能:

## Inner Function
funcA <- function(A){
return(A + 1)
}

## Outer Function 1
funcB <- function(B){
funcA(B)
}

## Outer Function 2
funcC <- function(C){
funcA(C)
}
我想做的是——
## Inner Function
funcA <- function(A){
if (called from funcB()){
x = 1
}else if(called from funcC()){
x = 2
}
return(A + x)
}
如何从 funcA 内部知道哪个外部函数称为 funcA?
我在这里先向您的帮助表示感谢。

最佳答案

这将给出一个包含调用函数名称的字符串:

as.character(sys.calls()[[sys.nframe() - 1]][[1]])
如果为了提高模块化完全可行,我不会这样做,而是将参数传递给 funcA这决定了它的行为方式,或者是否可以使用 S3 并将不同类的对象传递给 funcA .

关于r - 我们如何从子函数中提取外部函数的名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62798294/

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