如何解决如何从OLS回归结果创建变量?
import numpy as np
import pandas as pd
from scipy import stats
import statsmodels.api as sm
import matplotlib.pyplot as plt
d = {'City': ['Tokyo','Tokyo','Lisbon','Madrid','London','Tokyo'],'Card': ['Visa','Visa','Master Card','Bitcoin','Bitcoin'],'Client Number':[1,2,3,4,5,6,7,8,9,10,11],}
d = pd.DataFrame(data=d).set_index('Client Number')
df = pd.get_dummies(d,prefix='',prefix_sep='')
X = df[['Lisbon','New York','No','Yes']]
Y = df['Total']
X1 = sm.add_constant(X)
reg = sm.OLS(Y,X1).fit()
reg.summary()
我想导入每个变量的系数,以便将模型应用于新数据。我该怎么办?
解决方法
reg.params
包含参数估计。摘要中提供的其他数量可用reg.bse
(标准误差),reg.tvalues
(t统计量)和reg.pvalues
(P值)提供。
全套可用属性可以在文档中看到:
如果要将相同的参数应用于不同的数据集,最简单的方法是使用新数据构建新的OLS模型,例如,
mod = OLS(y_new,x_new)
,然后使用predict
方法,
mod.predict(reg.params)
其中res.params
来自您的原始身材。请注意,x_new必须在与原始回归相同的位置处具有相同的变量。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。