【问题标题】:Applying an OLS Model to a Different DataFrame?将 OLS 模型应用于不同的 DataFrame?
【发布时间】:2016-02-03 20:33:05
【问题描述】:

我创建了一个 3 位邮政编码数据的 OLS 模型:

x = nsaid_df[['Segment', 'FTE_A', 'FTE_B', 'FTE_C', 'inc100k']]
y = nsaid_df['Sales']
model = sm.OLS(y, x, missing='drop').fit()
model.summary()

该模型将人口统计数据(在 3 位邮政编码级别)与产品的销售额联系起来。我现在想使用该模型来预测 5 位数邮政编码级别的销售额。我有一个 DataFrame 包含与 3 位模型完全相同的系列,但每个 5 位邮政编码。我原以为我可以简单地写:

predict5 = model.predict(alx5)

这给出了一个有点神秘的错误信息:

“形状 (33678,15) 和 (5,) 未对齐:15 (dim 1) != 5 (dim 0)”

我的问题是,我如何使用我的模型来预测数据框中的值,该值不同于用于拟合原始模型的值

【问题讨论】:

标签: python pandas regression statsmodels


【解决方案1】:

貌似和这个问题一样predicting-out-future-values-using-ols-regression-python-statsmodels-pandas

所以答案是:

new_x = alx5[['Segment', 'FTE_A', 'FTE_B', 'FTE_C', 'inc100k']]
alx5.loc[:, 'NSAID'] = model.predict(new_x)

【讨论】:

  • 很酷,如果它解决了您的问题,您可以接受自己的问题并关闭它。
猜你喜欢
  • 1970-01-01
  • 2019-10-02
  • 2021-04-22
  • 1970-01-01
  • 1970-01-01
  • 2021-12-23
  • 1970-01-01
  • 2021-05-02
  • 1970-01-01
相关资源
最近更新 更多