刚刚有一个关于使用 Step AIC 进行预测的快速问题。我是R的初学者,所以如果解决方案很明显,请原谅。尝试四处寻找,但无法真正找到我要找的东西。
所以我试图预测响应变量,在主模型上运行逐步 AIC 之后(主模型具有所有解释变量)。stepAIC 给出了一个变量数量减少的新模型。我的问题是如何使用新的简化模型进行样本外预测。换句话说,我如何减少数据集,以便当我将其输入 predict.lm 时,它只有在减少模型中选择的变量。
下面是我的代码:
# Specify start and end row of the first 5 year window
start_row=1
end_row=60
#declare matrix that will contain the predicted returns by specifying dimensions
predicted=matrix(0,179,7)
y_var=as.matrix(orig_data[start_row:end_row,2:7])
x_var=as.matrix(orig_data[start_row:end_row,8:27])
# Perform linear regression on all factors and then select factors using stepwise AIC method
initial_model<- lm(y_var[,1]~x_var[,1]+x_var[,2]+x_var[,3]+x_var[,4]+x_var[,5]+x_var[,6]+x_var[,7]+x_var[,8]+x_var[,9]+x_var[,10]+x_var[,11]+x_var[,12]+x_var[,13]+x_var[,14]+x_var[,15]+x_var[,16]+x_var[,17]+x_var[,18]+x_var[,19]+x_var[,20])
reduced_model<-stepAIC(initial_model, direction="both")
reduced_coefs<-t(as.matrix(coef(reduced_model)))
x_input<-as.matrix(x_var[60,])
基本上我如何将从简化模型中得到的系数乘以“x_var”中的相应解释变量(它具有所有解释变量)
非常感谢你的帮助!