首頁>技術>

import pandas as pd

data=pd.read_csv(r"d:\mypythontest\loan.csv",encoding="gbk")

print(data.info())

data=data.fillna({"月收入":data["月收入"].mean(),"家屬數量":data["家屬數量"].mean()})

print(data.info())

#收入越高的人壞賬率越低嗎?

cut_bins=[0,5000,10000,15000,20000,100000] #區間劃分

income_cut=pd.cut(data["月收入"],cut_bins) #將月收入按照區間切分

all_income_user=data["好壞客戶"].groupby(income_cut).count() #全部客戶數

bad_income_user=data["好壞客戶"].groupby(income_cut).sum() #存在壞賬的客戶數

bad_rate=bad_income_user/all_income_user #壞賬率

print(bad_rate)

bad_rate.plot.bar() #直方圖

#年齡和壞賬率的關係

cut_bins=[0,18,36,45,60,120]

age_cut=pd.cut(data["年齡"],cut_bins)

all_age_user=data["好壞客戶"].groupby(age_cut).count()

bad_age_user=data["好壞客戶"].groupby(age_cut).sum()

bad_rate=bad_age_user/all_age_user #壞賬率

print(bad_rate)

bad_rate.plot.bar() #直方圖

#家庭人口數和壞賬率的關係

#雖然人口數量也是連續值,但是因為數值不是很大,所以就當作離散值來處理,不進行區間切分

all_man_user=data.groupby("家屬數量")["好壞客戶"].count()

bad_man_user=data.groupby("家屬數量")["好壞客戶"].sum()

bad_rate=bad_man_user/all_man_user #壞賬率

print(bad_rate)

bad_rate.plot() #直方圖

9
最新評論
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • Spring整合Mybatis全過程解析