gpt4 book ai didi

python - 如何在Statsmodels中识别OLS预测结果中的受试者?

转载 作者:行者123 更新时间:2023-12-01 08:17:36 25 4
gpt4 key购买 nike

我正在 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”列?

最佳答案

通过对 @Leda Grasiele 的答案进行一些细微的更正(包含内部方括号和使用换位函数),我得到了正确的代码,如下所示:

predict = pd.DataFrame([results.predict(test_base), train_base['id']]).T
predict.columns = ['predictions', 'id']
predict

关于python - 如何在Statsmodels中识别OLS预测结果中的受试者?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54895134/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com