用R中的plm函数预测

时间:2016-12-21 10:24:09

标签: r predict pooling plm

我想知道是否可以使用来自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()函数,但我只能将其用于预测实际模型对象的数据集。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

在使用predict.out.plm估算第一差异或固定效果模型后,我写了一个函数(plm)来做样本预测。

该功能发布在此处:

https://stackoverflow.com/a/44185441/2409896