For循环改变一个参数保持另一个不变

For loop vary one parameter keeping the other constant

我有一个 for 循环,其中我只想改变一个参数 p,同时保持另一个 q 不变。 pqgls() 中的“自动回归”和“移动平均”订单。如何实现?这是我的代码(不工作):

cor.results <- NULL
for(p in 0:3) {
  cor.temp <- gls(di.posaf~di.index + factor(subject):day + factor(subject), data=PMBCall2, method='ML', correlation=corARMA(p=p, q=0, form = ~ day | subject)) #I want to vary p only and keep q constant
  cor.results <- rbind(cor.results, c(p, q, logLik(cor.temp), AIC(cor.temp))) 
}

原来corARMA()不能同时接受p=0 & q=0 所以我把p的起始值增加到1

cor.results <- NULL
for(p in 1:3) {
  cor.temp <- gls(di.posaf~di.index + factor(subject):day + factor(subject), data=PMBCall2, method='ML', correlation=corARMA(p=p, q=0, form = ~ day | subject)) #p should start from 1
  cor.results <- rbind(cor.results, c(p, q, logLik(cor.temp), AIC(cor.temp))) 
}