我试图按组运行线性回归,并分别显示每个材料组的结果,包括特定材料的名称。
我的数据集有一个变量ActYTDVol,我正在UnitPrice上进行回归。我使用状态模型和for-in分别对每种材料(=组)执行这种回归。
我能够运行上述回归,但回归输出没有显示我正在分析的材料的名称,因此我无法说出回归输出所指的是哪种材料。
是否有方法显示回归输出旁边的材料(=组)名称?
这是我目前使用的代码:
import statsmodels.api as sm
from statsmodels.iolib.summary2 import summary_col
for Materials in df.Material.unique():
tempdf = df[df.Material == Materials]
X = sm.add_constant(tempdf['UnitPrice'])
y = tempdf['ACTYTDVol']
model = sm.OLS(y, X)
results = model.fit()
print(results.summary())我的当前输出显示了我所拥有的10个材料的10个OLS回归结果表。然而,它并没有说出进行回归的材料的名称,因此我无法知道结果所指的是哪种材料。
非常感谢你的帮助!
发布于 2017-05-20 12:36:14
您可以在循环中打印Materials。
此外,摘要有一个yname关键字,用于将响应变量的名称添加到摘要表model.OLSResults.summary中。
https://stackoverflow.com/questions/44083387
复制相似问题