日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

金融风控实战——生肖属性单变量分析

發布時間:2025/4/5 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 金融风控实战——生肖属性单变量分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

導入相關的包

import pandas as pd import numpy as np

讀取數據集

ft_zodiac = pd.read_csv('ft_zodiac.txt') zodiac_label = pd.read_csv('zodiac_label.txt')

查看數據集信息

ft_zodiac.head()

len(set(ft_zodiac.zodiac)) #查看12個屬性是否都有 #12 len(set(ft_zodiac.chinese_zodiac)) #查看12個生肖是否都有 #12ft_zodiac.shape #查看id是否有重復 #(23519, 4) #len(set(ft_zodiac.order_id)) zodiac_label.head()

set(zodiac_label.label) #{0, 1, 2}

定義好人和壞人的標簽

pd15作為好壞的分割節點。>15 為壞人,<15為好人?
15天以上的人為壞,標簽為1;5天以內的人為好標簽為0;5至15天的標簽為2。

ft_label = zodiac_label[zodiac_label["label"] != 2] #挖個洞,把2類標簽的客戶刪去 ft_label.head()

兩張表進行拼接

data = pd.merge(ft_label,ft_zodiac,on = 'order_id',how = "inner") #按照order_id拼接,取交集拼接

計算不同星座對應的壞賬率

zodiac_list = set(data.zodiac) chinese_zodiac_list = set(data.chinese_zodiac)

創建字典,來表示星座及對應的壞賬率

#星座 #badrate = bad/total zodiac_badrate = {} for x in zodiac_list:a = data[data.zodiac == x]bad = a[a.label == 1]["label"].count()good = a[a.label == 0]["label"].count()zodiac_badrate[x] = bad/(bad+good)zodiac_badrate #{'摩羯座': 0.12920489296636087, # '天蝎座': 0.12005028284098052, # '處女座': 0.13035143769968052, # '天秤座': 0.12461252324860508, # '水瓶座': 0.140117994100295, # '白羊座': 0.13455414012738853, # '獅子座': 0.12760416666666666, # '射手座': 0.14480286738351256, # '巨蟹座': 0.1408351026185421, # '雙子座': 0.1312410841654779, # '金牛座': 0.12259059367771781, # '雙魚座': 0.14873646209386282}

按照壞賬率從高到低進行排序

f = zip(zodiac_badrate.keys(),zodiac_badrate.values()) f = sorted(f,key = lambda x:x[1],reverse = True) zodiac_badrate = pd.DataFrame(f) zodiac_badrate.columns = pd.Series(["星座","badrate"]) zodiac_badrate

將不同星座壞賬率進行畫圖標表示

import matplotlib.pyplot as plt plt.rcParams["font.sans-serif"] = ["Heiti TC"] plt.figure(figsize=(9,6),dpi=80) plt.xlabel("星座") plt.ylabel("badrate") plt.ylim(0,0.16) plt.plot(zodiac_badrate["星座"],zodiac_badrate["badrate"])

計算不同生肖對應的壞賬率

創建字典,來表示生肖及對應的壞賬率

#星座 #badrate = bad/total chinese_zodiac_badrate = {} for x in chinese_zodiac_list:a = data[data.chinese_zodiac == x]bad = a[a.label == 1]["label"].count()good = a[a.label == 0]["label"].count()chinese_zodiac_badrate[x] = bad/(bad+good)chinese_zodiac_badrate # {'虎': 0.15165876777251186, # '鼠': 0.1340602950609365, # '豬': 0.14269406392694065, # '狗': 0.11052009456264776, # '羊': 0.11335403726708075, # '雞': 0.12846998063266624, # '龍': 0.1439084219133279, # '馬': 0.12053872053872054, # '牛': 0.1578112609040444, # '蛇': 0.12789827973074047, # '兔': 0.1502843216896832, # '猴': 0.12008141112618724}

按照壞賬率從高到低進行排序

f = zip(chinese_zodiac_badrate.keys(),chinese_zodiac_badrate.values()) f = sorted(f,key = lambda x:x[1], reverse=True) chinese_zodiac_badrate = pd.DataFrame(f) chinese_zodiac_badrate.columns = pd.Series(["生肖","badrate"]) chinese_zodiac_badrate.head()

將不同生肖壞賬率進行畫圖標表示

plt.figure(figsize = (9,6),dpi = 80) plt.plot(chinese_zodiac_badrate["生肖"],chinese_zodiac_badrate["badrate"]) plt.xlabel("生肖") plt.ylabel("badrate") plt.ylim(0,0.16)

總結

以上是生活随笔為你收集整理的金融风控实战——生肖属性单变量分析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。