2
我希望apply函数调用的函数在全局范围内有副作用,即影响全局范围内的变量。这不起作用,你可以看到:如何获得应用功能有副作用?
library(zoo)
test=1
rollapply(1:10, width=2, function(x) test=test+1)
# [1] NA NA NA NA NA NA NA NA NA
test
# 1
我想测试,以取得递增每次function(x)
被称为不幸的测试仍是1
rollapply
被执行后。有可能解决这个问题吗?
不是'NULL + 1'给出'numeric(0)'? – 2015-11-05 07:43:27
您可以使用'<< - '赋值参数来做到这一点,但这不是一种好的做法。 – Heroka
'assign'接受环境参数,'<< - '搜索所有的父框架,直到到达全局框架,如果它没有找到,它将分配一个新的值。 – jenesaisquoi