非常抱歉我的英语不好
R 中是否有一种方法可以在函数内部获取返回值所使用的名称,就像您可以使用 "substitute" 捕获输入变量的名称一样?我指的是像这样的 "outputname" 函数:
myFun=function(x){
nameIN=substitute(x)
nameOUT=outputname()
out=x*2
cat("The name of the input is ", nameIN," and this is the value:\n")
print(x)
cat("The name of the output is ", nameOUT, "and this is the value:\n")
print(out)
return(out)
}
This is what I wish:
> myINPUT=12;
> myOUTPUT=myFun(myINPUT)
The name of the input is myINPUT and this is the value:
[1] 12
The name of the output is myOUTPUT and this is the value:
[1] 24
> myOUTPUT
[1] 24
我一直在寻找答案,但我快要疯了。看起来是件很简单的事情,但我却找不到任何东西。
谢谢。
assign
代替=
或<-
?与原始操作符不同,它具有命名参数。 - Rolandmagrittr
管道工具,但是难道没有一些管道工具可以获取上一个语句的结果吗?如果是这样的话,您可能可以通过“向后查看”的管道命令来检索。 - Carl Witthoftfoo<-bar(x)
中,只有在return
调用时才会创建foo
。您可以通过以下方式进行验证:xfoo<-function(x) {print(ls(pat='xjk',env=.GlobalEnv));return(x)}
然后跟随xjk<-xfoo('something')
。 - Carl Witthoft