使用python中的交互式术语进行多元线性回归。

问题描述 投票:1回答:1

我正在使用交互式条款预测一个模型。

est = smf.ols(formula='mdvis ~ hlthp * logincome', data=df).fit(). 

当我使用线性回归时,我得到了相当不错的成绩,大约97%-R平方。

所以,我的问题是:在使用交互式条款进行预测时,如何使用testtrain数据进行评估,并使用交叉验证来计算统计学意义?

python linear-regression
1个回答
0
投票

使用交互项只是建立回归的exog矩阵的一种简单方法。它不会改变交叉验证的逻辑。

将你的数据框架分为训练和测试样本 。

train = df.sample(frac=0.8)
test  = df.drop(train.index)

然后在训练数据上拟合模型 。

res = smf.ols(formula='mdvis ~ hlthp * logincome', data=train).fit()

对整个数据(训练和测试)进行预测。

df['predict']=res.predict(exog=df)
df['delta']  = df['predict']-df['mdvis']

最后根据需要对每个火车和测试样本进行统计分离(这里我计算残差的标准差) 。

std_train=df.loc[train.index]['delta'].std()
std_test =df.loc[test.index]['delta'].std()
© www.soinside.com 2019 - 2024. All rights reserved.