【发布时间】:2017-10-20 08:54:42
【问题描述】:
我正在尝试按组运行线性回归并分别显示每个材料组的结果,包括特定材料的名称。
我的数据集有一个变量 ActYTDVol,我正在对 UnitPrice 进行回归。我使用 statsmodels 和 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 回归结果表。但是,它没有说明进行回归的材料的名称,因此我不知道结果是指哪个材料。
非常感谢您的帮助!
【问题讨论】:
标签: python-3.x for-loop statsmodels