statsmodels实现多元回归分析案例——不良贷款预测

1.导入相关库

import pandas as pd
import statsmodels.api as sm

2.进行相关性分析,消除变量之间的共线性

r=data[['不良贷款','各项贷款余额','本年累计应收贷款','贷款项目个数',\
        '本年固定资产投资额']].corr()

查看相关程度

可以发现各项贷款余额和贷款数目个数与其余变量相关性较高

3.进行多元回归分析

x=data[['各项贷款余额','本年累计应收贷款','贷款项目个数',\
        '本年固定资产投资额']]
y=data[['不良贷款']]

添加常数项

X=sm.add_constant(x)

最小二乘法并进行训练得到回归方程结果

model=sm.OLS(y,X)
result=model.fit()

查看置信水平为0.05的汇总结果

result.summary(alpha=0.05)

statsmodels实现多元回归分析案例——不良贷款预测_第1张图片

预测值描述真实值75.7%,F检验结果概率小于0.05,方程具有显著性

T检验存在不显著结果

整个方程显著但系数不显著,小概率H0发生,进行优化:

4.优化多元线性回归

剔除贷款项目个数,重新分析后:

statsmodels实现多元回归分析案例——不良贷款预测_第2张图片

由于数据量较小,T检验结果仍不是十分完美,但比之前有了较大提升

5.对原数据进行重新预测

取前五个:

test=data[:5]
x=test[['各项贷款余额','本年累计应收贷款',\
        '本年固定资产投资额']]
X=sm.add_constant(x)
y_hat=result.predict(X)
print(y_hat)

预测结果比较

statsmodels实现多元回归分析案例——不良贷款预测_第3张图片                                         statsmodels实现多元回归分析案例——不良贷款预测_第4张图片

虽然个别数据存在偏差,但总体数据相差不大,可以采用此模型 

 

你可能感兴趣的:(玄学炼丹)