用python计算贷款_Python基于Logistic回归建模计算某银行在降低贷款拖欠率的数据示例...
本文实例讲述了Python基于Logistic回归建模计算某银行在降低贷款拖欠率的数据。分享给大家供大家参考,具体如下:
一、Logistic回归模型:
二、Logistic回归建模步骤
1.根据分析目的设置指标变量(因变量和自变量),根据收集到的数据进行筛选
2.用ln(p/1-p)和自变量x1...xp列出线性回归方程,估计出模型中的回归系数
3.进行模型检验。模型有效性检验的函数有很多,比如正确率、混淆矩阵、ROC曲线、KS值
4.模型应用。
三、对某银行在降低贷款拖欠率的数据进行建模
源代码为:
import pandas as pd
filename=r'..\data\bankloan.xls' #导入数据路径
data=pd.read_excel(filename) #读取该excel文件
x=data.iloc[:,:8].as_matrix() #选取数据集中0-7行的数据,形成一个矩阵
y=data.iloc[:,8].as_matrix()
from sklearn.linear_model import LogisticRegression as LR
from sklearn.linear_model import RandomizedLogisticRegression as RLR
rlr=RLR()
rlr.fit(x,y) #训练模型
rlr.get_support() #获取特征筛选结果
print(u'通过逻辑回归模型筛选特征结束。')
print(u'有效特征为:%s'%','.join(data.columns[rlr.get_support()]))
x=data[data.columns[rlr.get_support()]].as_matrix() #筛选好的特征
lr=LR()
lr.fit(x,y)
print(u'逻辑回归模型训练结束')
print(u'模型的平均正确率:%s'%lr.score(x,y))
机器运行结果报错:
IndexError: boolean index did not match indexed array along dimension 0; dimension is 9 but corresponding boolean dimension is 8
解决办法:建立一个新的矩阵data2,去掉最后一行,使维数匹配。
修改后代码如下:
import pandas as pd
filename=r'..\data\bankloan.xls'
data=pd.read_excel(filename)
x=data.iloc[:,:8].as_matrix()
y=data.iloc[:,8].as_matrix()
from sklearn.linear_model import LogisticRegression as LR
from sklearn.linear_model import RandomizedLogisticRegression as RLR
rlr=RLR()
rlr.fit(x,y)
rlr.get_support()
print(u'通过逻辑回归模型筛选特征结束。')
data2=data.drop(u'违约',1)
print(u'有效特征为:%s'%','.join(data2.columns[rlr.get_support()]))
x=data[data2.columns[rlr.get_support()]].as_matrix()
lr=LR()
lr.fit(x,y)
print(u'逻辑回归模型训练结束')
print(u'模型的平均正确率:%s'%lr.score(x,y))
机器运行结果:
希望本文所述对大家Python程序设计有所帮助。
用python计算贷款_Python基于Logistic回归建模计算某银行在降低贷款拖欠率的数据示例...相关推荐
- python基于logistic回归模型的预测概率和标签信息可视化ROC曲线
python基于logistic回归模型的预测概率和标签信息可视化ROC曲线 目录 python基于logistic回归模型的预测概率和标签信息可视化ROC曲线
- 基于Logistic回归的上市公司ROE预测
基于Logistic回归的上市公司ROE预测 目录 基于Logistic回归的上市公司ROE预测 前言 基于Logistic回归的上市公司ROE预测 导入相关库 读取并查看数据基本情况 划分自变量与因 ...
- 机器学习笔记1:基于Logistic回归进行数据预测
机器学习笔记1:基于Logistic回归进行数据预测 一.背景 近期项目的一个核心部分就是实现对数据的预测,因为没有实际的数据样本,所以我准备近期学习Machine Learning的几种方式,从简单 ...
- R语言splines包构建基于logistic回归的自然样条分析:南非心脏病数据集、非线性:基函数展开和样条分析、你简单分析的不重要特征,可能只是线性不显著、而非线性是显著的
R语言splines包构建基于logistic回归的自然样条分析:南非心脏病数据集.非线性:基函数展开和样条分析.你简单分析的不重要特征,可能只是线性不显著.而非线性是显著的 目录
- R语言限制性立方样条(RCS, Restricted cubic spline)分析:基于logistic回归模型、南非心脏病数据集(South African Heart Disease)
R语言限制性立方样条(RCS, Restricted cubic spline)分析:基于logistic回归模型.南非心脏病数据集(South African Heart Disease) 目录
- R语言计算F1评估指标实战:F1 score、使用R中caret包中的confusionMatrix()函数为给定的logistic回归模型计算F1得分(和其他指标)
R语言计算F1评估指标实战:F1 score.使用R中caret包中的confusionMatrix()函数为给定的logistic回归模型计算F1得分(和其他指标) 目录
- 数学建模-分类模型(基于logistic回归)
基于logistic回归的分类模型: 对于二分类模型,采用基础逻辑回归(logistic regression) 对于多分类模型,采用多分类逻辑回归 模型要求(针对01 logistic) 假设1:因 ...
- 基于Logistic回归的麻雀搜索算法
文章目录 一.理论基础 1.麻雀搜索算法 2.改进麻雀搜索算法 (1)逐维小孔成像反向学习优化发现者位置 (2)基于Logistic模型的自适应因子 (3)算法伪代码 二.仿真实验与分析 三.参考文献 ...
- Python机器学习(二):Logistic回归建模分类实例——信用卡欺诈监测(上)
Logistic回归建模分类实例--信用卡欺诈监测 现有一个creditcard.csv(点此下载)数据集,其中包含不同客户信用卡的特征数据(V1.V2--V28.Amount)和标签数据(Class ...
最新文章
- 用navicate 连接本地数据库提示用户名/口令无效
- Linux系统之高级用户组和权限管理
- 第四讲、Linux常用命令
- redis的基本使用笔记一
- HNCU 1741: 算法3-2:行编辑程序
- java 反射用法_Java 反射的概念与使用
- 粉丝大失所望,罗永浩回应:做主播赚的不是脏钱
- 主板开启网络唤醒(Wake on lan)
- SpringMVC学习(三)RestFul风格
- centos7下yum安装mysql_CentOS7下使用YUM安装MySQL5.6-Go语言中文社区
- OpenGL图形学中的DDA算法
- 20220508ARCore 初体验
- Scratch3.0——助力新进程序员理解程序(案例一、画画的蝴蝶)
- java获取网页编码_java根据URL获取网页编码
- Maven deploy项目到私服报错
- 28 关于 Finalizer
- 机器学习之选择小样本交叉验证训练模型并使用精确率、召回率、F1分数和AUC值、画出ROC曲线评估
- torchtext field.build_vocab问题
- Java 爬取微信公众号文章(文字 + 图片)
- 201871010105-曹玉中《面向对象程序设计(java)》第四周学习总结