【天池比赛】【零基础入门金融风控 Task2赛题理解】实战进行中……

2.3 代码示例

2.3.1 导入数据分析及可视化过程需要的库

python 复制代码
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import datetime
import warnings
warnings.filterwarnings('ignore')

2.3.2 读取文件

python 复制代码
#读取数据时相对路径载入报错时,尝试使用os.getcwd()查看当前工作目录
data_train = pd.read_csv(os.getcwd()+'//零基础入门金融风控-贷款违约预测//data//train.csv')
data_test_a = pd.read_csv(os.getcwd()+'//零基础入门金融风控-贷款违约预测//data//testA.csv')

运行结果:

2.3.2.1读取文件的拓展知识

  • TSV与CSV的区别:
    • 从名称上即可知道,TSV是用制表符(Tab,'\t')作为字段值的分隔符;CSV是用半角逗号(',')作为字段值的分隔符;
    • Python对TSV文件的支持: Python的csv模块准确的讲应该叫做dsv模块,因为它实际上是支持范式的分隔符分隔值文件(DSV,delimiter-separated values)的。 delimiter参数值默认为半角逗号,即默认将被处理文件视为CSV。当delimiter='\t'时,被处理文件就是TSV。
  • 读取文件的部分(适用于文件特别大的场景)
    • 通过nrows参数,来设置读取文件的前多少行,nrows是一个大于等于0的整数。
    • 分块读取
python 复制代码
data_train_sample = pd.read_csv(data_train_path,nrows=5)
print(data_train_sample)

#设置chunksize参数,来控制每次迭代数据的大小
chunker = pd.read_csv(data_train_path,chunksize=5)
for item in chunker:
    print(type(item))
    print(len(item))
    break

运行结果:

2.3.3总体了解

2.3.3.1 查看数据集的样本个数和原始特征维度
python 复制代码
data_train.shape
data_test.shape
data_train.columns

运行结果:

2.3.3.2 查看一下具体的列名,赛题理解部分已经给出具体的特征含义,这里方便阅读再给一下:
  • id 为贷款清单分配的唯一信用证标识

  • loanAmnt 贷款金额

  • term 贷款期限(year)

  • interestRate 贷款利率

  • installment 分期付款金额

  • grade 贷款等级

  • subGrade 贷款等级之子级

  • employmentTitle 就业职称

  • employmentLength 就业年限(年)

  • homeOwnership 借款人在登记时提供的房屋所有权状况

  • annualIncome 年收入

  • verificationStatus 验证状态

  • issueDate 贷款发放的月份

  • purpose 借款人在贷款申请时的贷款用途类别

  • postCode 借款人在贷款申请中提供的邮政编码的前3位数字

  • regionCode 地区编码

  • dti 债务收入比

  • delinquency_2years 借款人过去2年信用档案中逾期30天以上的违约事件数

  • ficoRangeLow 借款人在贷款发放时的fico所属的下限范围

  • ficoRangeHigh 借款人在贷款发放时的fico所属的上限范围

  • openAcc 借款人信用档案中未结信用额度的数量

  • pubRec 贬损公共记录的数量

  • pubRecBankruptcies 公开记录清除的数量

  • revolBal 信贷周转余额合计

  • revolUtil 循环额度利用率,或借款人使用的相对于所有可用循环信贷的信贷金额

  • totalAcc 借款人信用档案中当前的信用额度总数

  • initialListStatus 贷款的初始列表状态

  • applicationType 表明贷款是个人申请还是与两个共同借款人的联合申请

  • earliesCreditLine 借款人最早报告的信用额度开立的月份

  • title 借款人提供的贷款名称

  • policyCode 公开可用的策略代码=1新产品不公开可用的策略代码=2

  • n系列匿名特征 匿名特征n0-n14,为一些贷款人行为计数特征的处理

2.3.3.3 通过info()来熟悉数据类型
python 复制代码
data_train.info()

运行结果:

2.3.3.4 总体粗略的查看数据集各个特征的一些基本统计量
python 复制代码
data_train.describe()

运行结果:

| id | loanAmnt | term | interestRate | installment | employmentTitle | homeOwnership | annualIncome | verificationStatus | isDefault | ... | n5 | n6 | n7 | n8 | n9 | n10 | n11 | n12 | n13 | n14 |
| count | 800000.000000 | 800000.000000 | 800000.000000 | 800000.000000 | 800000.000000 | 799999.000000 | 800000.000000 | 8.000000e+05 | 800000.000000 | 800000.000000 | ... | 759730.000000 | 759730.000000 | 759730.000000 | 759729.000000 | 759730.000000 | 766761.000000 | 730248.000000 | 759730.000000 | 759730.000000 | 759730.000000 |
| mean | 399999.500000 | 14416.818875 | 3.482745 | 13.238391 | 437.947723 | 72005.351714 | 0.614213 | 7.613391e+04 | 1.009683 | 0.199513 | ... | 8.107937 | 8.575994 | 8.282953 | 14.622488 | 5.592345 | 11.643896 | 0.000815 | 0.003384 | 0.089366 | 2.178606 |
| std | 230940.252015 | 8716.086178 | 0.855832 | 4.765757 | 261.460393 | 106585.640204 | 0.675749 | 6.894751e+04 | 0.782716 | 0.399634 | ... | 4.799210 | 7.400536 | 4.561689 | 8.124610 | 3.216184 | 5.484104 | 0.030075 | 0.062041 | 0.509069 | 1.844377 |
| min | 0.000000 | 500.000000 | 3.000000 | 5.310000 | 15.690000 | 0.000000 | 0.000000 | 0.000000e+00 | 0.000000 | 0.000000 | ... | 0.000000 | 0.000000 | 0.000000 | 1.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 |
| 25% | 199999.750000 | 8000.000000 | 3.000000 | 9.750000 | 248.450000 | 427.000000 | 0.000000 | 4.560000e+04 | 0.000000 | 0.000000 | ... | 5.000000 | 4.000000 | 5.000000 | 9.000000 | 3.000000 | 8.000000 | 0.000000 | 0.000000 | 0.000000 | 1.000000 |
| 50% | 399999.500000 | 12000.000000 | 3.000000 | 12.740000 | 375.135000 | 7755.000000 | 1.000000 | 6.500000e+04 | 1.000000 | 0.000000 | ... | 7.000000 | 7.000000 | 7.000000 | 13.000000 | 5.000000 | 11.000000 | 0.000000 | 0.000000 | 0.000000 | 2.000000 |
| 75% | 599999.250000 | 20000.000000 | 3.000000 | 15.990000 | 580.710000 | 117663.500000 | 1.000000 | 9.000000e+04 | 2.000000 | 0.000000 | ... | 11.000000 | 11.000000 | 10.000000 | 19.000000 | 7.000000 | 14.000000 | 0.000000 | 0.000000 | 0.000000 | 3.000000 |

max 799999.000000 40000.000000 5.000000 30.990000 1715.420000 378351.000000 5.000000 1.099920e+07 2.000000 1.000000 ... 70.000000 132.000000 79.000000 128.000000 45.000000 82.000000 4.000000 4.000000 39.000000 30.000000

欲知后事如何,且听下回分解........................

相关推荐
技术程序猿华锋1 分钟前
重新定义 AI 协同:三款开源 MCP 工具开启智能体从“聊天”到“操控”
人工智能·开源
「、皓子~13 分钟前
AI创作系列(2):UniApp跨端开发实战 - 海狸IM移动端完全由AI编写
开发语言·人工智能·uni-app·开源·vue·开源软件·ai编程
Sui_Network13 分钟前
WAYE.ai 为Sui 上 AI 的下一个时代赋能
大数据·前端·人工智能·物联网·游戏
BAOYUCompany14 分钟前
暴雨亮相2025中关村论坛数字金融与金融安全大会
大数据·人工智能
程序员的世界你不懂23 分钟前
Appium+python自动化(二十一)- Monkey指令操作手机
python·appium·自动化
belldeep1 小时前
python 在基因研究中的应用,博德研究所:基因编辑
python·基因·broad institute·博德研究所·基因编辑
星火飞码iFlyCode1 小时前
【无标题】
java·前端·人工智能·算法
TMT星球1 小时前
“储能+热泵+AI”三维驱动,美的能源定义能源科技新未来
人工智能·科技·能源
XMYX-01 小时前
Python 实现一个带进度条的 URL 批量下载工具(含 GUI 界面)
开发语言·python
大师兄带你刨AI2 小时前
「AI产业」| 《2025中国低空经济商业洞察报告(商业无人机应用篇)》
大数据·人工智能