我想知道是否可以使用来自R中plm包的plm函数来预测变量的新数据集。我使用以下方法创建了一个模型对象:
model <- plm(formula, data, index, model = 'pooling')
现在我希望从新数据集中预测一个尚未用于估计模型的因变量。我可以通过使用模型对象中的系数来做到这一点:
col_idx <- c(...)
df <- cbind(rep(1, nrow(df)), df[(1:ncol(df))[-col_idx]])
fitted_values <- as.matrix(df) %*% as.matrix(model_object$coefficients)
这样我首先定义模型中使用的索引列,并由于col_idx中的共线性而丢弃列,然后构造一个数据矩阵,需要乘以模型中的系数。但是,我可以通过手动删除列来更容易地发现错误。
设计用于执行此操作的功能将使代码更具可读性。我还找到了pmodel.response()函数,但我只能将其用于预测实际模型对象的数据集。
任何帮助将不胜感激!
答案 0 :(得分:0)
在使用predict.out.plm
估算第一差异或固定效果模型后,我写了一个函数(plm
)来做样本预测。
该功能发布在此处: