【发布时间】:2016-09-16 04:40:35
【问题描述】:
我完全是 R 的初学者,并且一直在努力搜索我的问题的解决方案,因为虽然我确信这是一个非常基本的问题,但我发现很难解释我想要做什么。我很欣赏 stackoverflow 仅适用于严肃的程序员,所以如果有人甚至可以指出其他人处理同一主题的问题,我将非常感激。话虽如此:
我想做的是有一个函数能够读取并分配给向量的名称,而不仅仅是它的内容。我写的时候:
num <- 5
func <- function(x) {
x <<- 8
}
func(num)
我认为它会创建一个名为“num”的新向量。 -- 就像这样,它会读起来像:
func(num)
num <<- 8.
但是相反,它要么只是创建一个字面上称为“x”的新向量,并将“8”分配给它,要么它试图将“8”分配给“5”,我真的不知道是哪个。无论哪种方式,我如何告诉 R 我希望它利用我在参数中写的内容作为向量名称?
【问题讨论】:
-
您正在使用全局赋值运算符
<<-。看看这里的赋值运算符:stat.ethz.ch/R-manual/R-devel/library/base/html/assignOps.html -
您的预期目标是functional programming 的对立面。最好遵守函数式编程的原则(例如,函数不应该有副作用),因为 R 在设计时就考虑到了这些。忘记
<<-运算符吧。 -
忘记“Google 解决方案”,只需阅读 CRAN 提供的 R-intro 文档>
标签: r