私は12の予測子のデータフレームと、BEI(私が予測したい)という数のリストを持っています。私は、データの12行ごとに段階的な選択を実行したいと思います。たとえば、1:12、2:13などです。各ローリングについて、係数を返し、係数を使用してBEIを予測します。以下は私のコードです:R段階の回帰回帰R
k = length(BEI)
coef.list <- numeric()
predicted.list <- numeric()
for(i in 1:(k-11)){
BEI.subset <- BEI[i:(i+11)]
predictors.subset <- predictors[c(i:(i+11)),]
fit.stepwise <- regsubsets(BEI.subset~., data = predictors.subset, nvmax = 10, method = "forward")
fit.summary <- summary(fit.stepwise)
id <- which.min(fit.summary$cp)
coefficients <- coef(fit.stepwise,id)
coef.list <- append(coef.list, coefficients)
form <- as.formula(fit.stepwise$call[[2]])
mat <- model.matrix(form,predictors.subset)
predicted.stepwise <- mat[,names(coefficients)]%*%coefficients
predicted.list <- append(predicted.list, predicted.stepwise)
}
と私はこのようなエラーを得た: 並べ替え変数をして、再度試みる:50件の以上の警告があった (使用上の警告()最初の50を参照する)
警告: 1:in leaps.setup(x、y、wt = wt、nbest = nbest、nvmax = nvmax、...: 1つのリニア依存関係が見つかりました 2:leaps.setup(x、y、wt = nbsp; nbest = nbest、nvmax = nvmax、...: 1つのリニア依存関係が見つかった leaps.setup(x、y、wt = wt、nbest = nbest、nvmax = nvmax、...: 1つの線形の依存関係が見つかりました ....など
これを修正するにはどうすればよいですか?それともコードを書くより良い方法ですか?