Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在R中编写一个一次测试多个参数的循环?_R_Loops - Fatal编程技术网

如何在R中编写一个一次测试多个参数的循环?

如何在R中编写一个一次测试多个参数的循环?,r,loops,R,Loops,我编写了下面的循环来选择最佳的df,x,这样我就可以得到lm模型的最低AIC aic<-rep(NA,20) for(i in 1:20){ cb1 <- crossbasis(AFH6, lag=24, argvar=list(fun="ns",df=8, cen=200), arglag=list(knots= logknots(24, 3))) cb2 <- crossbasis(OutT, lag=24, argvar=list(fun="poly", degree=

我编写了下面的循环来选择最佳的df,x,这样我就可以得到lm模型的最低AIC

aic<-rep(NA,20) 
for(i in 1:20){
cb1 <- crossbasis(AFH6, lag=24, argvar=list(fun="ns",df=8, cen=200), arglag=list(knots= logknots(24, 3)))
cb2 <- crossbasis(OutT, lag=24, argvar=list(fun="poly", degree=3, cen=12.28), arglag=list(knots= logknots(24, 3)))
cb3 <- crossbasis(OutRH, lag=24, argvar=list(fun="poly", degree=3, cen=68.5), arglag=list(knots= logknots(24, 3)))
aic[i]<-AIC(lm(NH3cH6~cb1+cb2+cb3+ns(DenH6,i)+ns(HenageH6,6)+ns(MweightH6,7)+ns(Time,5)+as.factor(LightH6)+ as.factor(MoltH6)))}

谢谢你的帮助

可能使用三重循环并将结果存储在三维数组中?您可能需要考虑
mgcv()
包中的
gam()
函数,该函数将自动调整平滑项的复杂程度(将通过
s()
而不是
ns()表示)
为了最大化广义交叉验证分数(几乎等同于最小化AIC),是的,我想尝试一下,但我不知道如何编写代码……@flodel
lm( NH3cH6 ~ cb1+cb2+cb3+ns(DenH6,i)+ns(HenageH6,j)+ns(MweightH6,k)+ns(Time,5)+as.factor(LightH6)+ as.factor(MoltH6)