首页 > 解决方案 > 在 python 中总结 p 值 10 种不同的回归模型

问题描述

我得到了一个数据集并创建了 10 个不同的多重线性回归模型。最后,我想为我开发的 10 个多重回归模型创建一个包含“回归参数估计值和相应的 p 值”的表。我该怎么走?我的初始代码如下:

import pandas as pd
import sklearn
from sklearn import linear_model
import statsmodels.api as sm
import statsmodels.formula.api as smf
from statsmodels.stats.anova import anova_lm

data=pd.read_excel("C:\\Users\xxxxxxxx\Desktop\MSc\DATS501\homework\dats501_hw1_DataFile_CreditCustomers.xlsx", index_col=0)
df = pd.DataFrame(data)


    
df1=df.sample(n = 50, replace = False)

X1 = df1[['Annual Income ($1000)','Household Size','Years of Post-HS Education']] 
Y1 = df1['Annual Charges ($)']
X1 = sm.add_constant(X1)
mreg1 = sm.OLS(Y1, X1).fit()
    
df2=df.sample(n = 50, replace = False)

X2 = df2[['Annual Income ($1000)','Household Size','Years of Post-HS Education']] 
Y2 = df2['Annual Charges ($)']
X2 = sm.add_constant(X2)
mreg2 = sm.OLS(Y2, X2).fit()

df3=df.sample(n = 50, replace = False)

X3 = df3[['Annual Income ($1000)','Household Size','Years of Post-HS Education']] 
Y3 = df3['Annual Charges ($)']
X3 = sm.add_constant(X3)
mreg3 = sm.OLS(Y3, X3).fit()

df1=df.sample(n = 50, replace = False)

X4 = df4[['Annual Income ($1000)','Household Size','Years of Post-HS Education']] 
Y4 = df4['Annual Charges ($)']
X4 = sm.add_constant(X4)
mreg4 = sm.OLS(Y4, X4).fit()

X5 = df5[['Annual Income ($1000)','Household Size','Years of Post-HS Education']] 
Y5 = df5['Annual Charges ($)']
X5 = sm.add_constant(X5)
mreg5 = sm.OLS(Y5, X5).fit()

X6 = df6[['Annual Income ($1000)','Household Size','Years of Post-HS Education']] 
Y6 = df6['Annual Charges ($)']
X6 = sm.add_constant(X6)
mreg6 = sm.OLS(Y6, X6).fit()

X7 = df7[['Annual Income ($1000)','Household Size','Years of Post-HS Education']] 
Y7 = df7['Annual Charges ($)']
X7 = sm.add_constant(X7)
mreg7 = sm.OLS(Y7, X7).fit()

X8 = df8[['Annual Income ($1000)','Household Size','Years of Post-HS Education']] 
Y8 = df8['Annual Charges ($)']
X8 = sm.add_constant(X8)
mreg8 = sm.OLS(Y8, X8).fit()

X9 = df9[['Annual Income ($1000)','Household Size','Years of Post-HS Education']] 
Y9 = df9['Annual Charges ($)']
X9 = sm.add_constant(X9)
mreg9 = sm.OLS(Y9, X9).fit()

X10 = df10[['Annual Income ($1000)','Household Size','Years of Post-HS Education']] 
Y10 = df10['Annual Charges ($)']
X10 = sm.add_constant(X10)
mreg10 = sm.OLS(Y10, X10).fit()

标签: pythonregression

解决方案


推荐阅读