信贷违约风险评估预测-kaggle项目

kaggle原案例
目标:为了确保贷款的安全性,需要对客户的信用或者还款能力进行评估

数据导入并预览

import pandas as pd
df = pd.read_csv(
    "https://labfile.oss.aliyuncs.com/courses/1363/HomeCredit.csv")
df.head()

df.describe()
df.shape
df.columns

数据可视化分析

查看贷款金额的分布情况

import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings("ignore")
%matplotlib inline

plt.figure(figsize=(12, 5))
plt.title("Distribution of AMT_CREDIT")
ax = sns.distplot(df["AMT_CREDIT"])  # 画出数据分布图

#同样的,查看收入情况的分布情况
plt.figure(figsize=(12, 5))
plt.title("Distribution of AMT_INCOME_TOTAL")
# 画出数据分布图
ax = sns.distplot(df["AMT_INCOME_TOTAL"].dropna())

#如果贷款的对象是货物的话,看一下这些货物的价格分布。
plt.figure(figsize=(12,5))
plt.title('Distribution of AMT_GOODS_PRICE')
ax = sns.distplot(df['AMT_GOODS_PRICE'].dropna())

import plotly.offline as offline
import plotly.graph_objs as go
import plotly.offline as py
from plotly.offline import init_notebook_mode, iplot
init_notebook_mode(connected=True)
offline.init_notebook_mode()

查看陪同人员情况

temp = df["NAME_TYPE_SUITE"].value_counts()
# 画出柱状图
trace = [go.Bar(x=temp.index, y=(temp / temp.sum())*100,)]
# 设置图的字体颜色等
layout = go.Layout(
    title="Who accompanied client when applying for the  application in % ",
    xaxis=dict(title='Name of type of the Suite',
               tickfont=dict(size=14, color='rgb(107, 107, 107)')),
    yaxis=dict(title='Count of Name of type of the Suite in %',
               titlefont=dict(size=16, color='rgb(107, 107, 107)'),
               tickfont=dict(size=14, color='rgb(107, 107, 107)'))
)

fig = go.Figure(data=trace, layout=layout)
iplot(fig, filename='schoolStateNames')
#结论:几乎 80% 的人都没有人陪同。而只有少部分人有家人或合伙人陪同

申请人的还款能力

temp = df["TARGET"].value_counts()
# 画出饼状图
trace = [go.Pie(labels=temp.index, values=temp.values)]
# 设置图题
layout = go.Layout(
    title='Loan Repayed or not',
)
# 显示图形
fig = go.Figure(data=trace, layout=layout)
iplot(fig)
#有超过 90% 的人没有还款能力

查看还款类型,做环形图
查看贷款类型

temp = df["NAME_CONTRACT_TYPE"].value_counts()
# 画出饼状图
trace = [go.Pie(labels=temp.index, values=temp.values, hole=0.6)]
# 设置图题
layout = go.Layout(
    title='Types of loan',
)
# 显示图形
fig = go.Figure(data=trace, layout=layout)
iplot(fig)
#Revolving loan 表示周期性贷款,类似于分期贷款。 Cash loans 贷款表示现金贷款。
#由上图可知,有超过 90% 的人申请的贷款为现金贷款。

查看申请人贷款的目的

temp1 = df["FLAG_OWN_CAR"].value_counts()
temp2 = df["FLAG_OWN_REALTY"].value_counts()
# 画出饼状图
trace = [go
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值