如何修改R中函数内的可变变量?

时间:2017-02-16 00:16:43

标签: r

我有一些问题要在R中的函数内正确返回变量 在下面的示例中,我创建了一个Leave-One-Out交叉验证函数。问题是该函数似乎没有以任何方式影响变量'mse',它保持原来的设置。

我尝试只从'for'行运行脚本,它运行良好,所有'mse'值都被添加到变量中。

LOOCV Screenshot

为什么通过使用函数,我无法修改我的变量?它与本地/一般变量有关吗?

谢谢。

1 个答案:

答案 0 :(得分:0)

在R中,函数按值接收参数。这意味着函数不会在外部更改其参数。例如,以下代码

test <- function(x) {x=5}
a <- 10
test(a)
print(a)

打印:

[1] 10

要从函数返回内容,请使用

return(something)