因此,首先要简要介绍一下:我对R相当陌生,在这里甚至更多,并且还可以就今天遇到的这个问题进行一些教学讨论;
我决定编写我的第一个函数,以减少数据转换中的一些重复性任务,以清理一些手动编写的旧代码。我一个接一个地声明了set1,set2等全局变量,现在想将它实现到我的函数中,遇到<<-运算符。到目前为止,到目前为止,我还不太了解:
x <- "test"
y <- "try"
example <- function(x, y){
x <<- y
x}
即使尝试使用x
调用,也会得到一个名为x的全局变量; 即使x在输出中明显被称为“测试” 对于那些遇到相同问题的人,我发现了一种直接的解决方法
example <- function(x, y){
assign(x, y, envir = .GlobalEnv)
}
在这种情况下,将全局变量命名为函数输入x,test,因为我想为函数中给定的数据集命名数据集,但这在我的情况下仍然需要,但是我仍然觉得这不太直观,所以我想知道是否有人对此发表了一些有趣的评论-不太确定我在这里期望什么,但希望这可能会有人在尽可能少的情况下提供帮助;)
ps:该主题可能与Global and local variables in R中有趣的答案密切相关 然而,除了指出实现似乎确实存在问题之外,没有说明<<-如何影响变量命名。