我正在 Jupyter 笔记本中使用 Statsmodels 进行线性回归。数据位于名为“train_base”的 DataFrame 中,其中 id 列标识了我的数据库的每个唯一主题。train_base 是这样的:
id y x0 x1 x2
a123 20 8 1 3
b789 33 8 3 2
d782 77 9 6 5
主要代码块如下所示。请注意,我正在使用另一个名为“test_base”的基础进行预测,并且该基础也具有与“train_base”相同的结构,除了“y”列:
results = smf.ols('y ~ x0 + x1 + x2', data=train_base).fit()
predictions = results.predict(test_base)
predictions.head()
预测是这样的:
0 -0.054789
1 -0.036042
2 -0.043962
3 -0.135725
4 -0.409129
dtype: float64
在我看来,预测中显示的第一列是原始 train_base 的索引(我正确吗?)。由于我需要确定我的测试库中每个人的预测值,我必须做什么才能在预测中包含“id”列?