金融风控训练营赛题理解(task 2)学习笔记

本学习笔记为阿里云天池龙珠计划Docker训练营的学习内容,学习链接为:https://github.com/datawhalechina/team-learning-data-mining/tree/master/FinancialRiskControl

Task2目的:
1.EDA价值主要在于熟悉了解整个数据集的基本情况(缺失值,异常值),对数据集进行验证是否可以进行接下来的机器学习或者深度学习建模.
2.了解变量间的相互关系、变量与预测值之间的存在关系。
3.为特征工程做准备

1、学习知识概要

  • 学习如何对数据集整体概况进行分析,包括数据集的基本情况(缺失值,异常值)
  • 学习如何对数据进行统计规整,按条件进行筛选
  • 学习如何利用matplotlib进行数据可视化作图
  • 数据总体了解
    • 读取数据集并了解数据集大小,原始特征维度;
    • 通过info熟悉数据类型;
    • 粗略查看数据集中各特征基本统计量;
  • 缺失值和唯一值:
    • 查看数据缺失值情况
    • 查看唯一值特征情况
  • 深入数据-查看数据类型
    • 类别型数据
    • 数值型数据
      • 离散数值型数据
      • 连续数值型数据
  • 时间格式数据处理及查看
  • 掌握数据透视图
  • 用pandas_profiling生成数据报告

2、学习内容

2.1 数据总体了解

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

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import datetime
import warnings
warnings.filterwarnings('ignore')
import pandas profiling

读取数据

data_train = pd.read_csv('train.csv')
data_test_a = pd.read_csv('testA.csv')

倘若遇到数据量过大的表格,最好加入chunksize分块读入
pd.read_csv用法

查看一下数据大概长啥样

id	loanAmnt	term	interestRate	installment	   grade	subGrade	employmentTitle	employmentLength	homeOwnership	...	 n5	  n6    n7	   n8	  n9	 n10	 n11	n12    n13	 n14
0	35000.0	      5	        19.52	       917.97	     E	       E2	          320.0	         2 years	          2	        ...	9.0	  8.0	4.0	   12.0	  2.0	 7.0	 0.0	0.0	   0.0	 2.0

查看数据信息
可以创建一个实例,自己代入理解,例如:
data_train=pd.DataFrame({“A”:[1,2,3,4,5,6],“B”:[3,4,NAN,7,NAN,5],“C”:[2,NAN,3,7,NAN,3],“D”:[2,6,7,9,5,5]})

在这里插入图片描述

data_train.info()#总体数据信息
data_train.shape #返回数据行列数
data_train.columns #返回数据列名
data_train.describe()#返回数据集各个特征的一些基本统计量,包括均值、总数、最大小值、方差、主要分位数
data_train.head(2).append(data_train.tail(2))#查看头两列和尾两列信息,用append连成一个表

具体列名介绍

  • 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.2 缺失值和唯一值

查看训练集测试集中特征属性含缺失值的特征

print(len(data_train))#返回行数
print(data_train.isnull())##is.null()在相应数据单元格返回布尔型数据,是缺失值就返回True,否则返回False   
print(data_train.isnull().sum()) #sum()默认列统计 sum参数:0-列,1-print(data_train.isnull().any()) #any() 有一个True就返回True   all()得全部是True才返回True
#any(0)列操作  any(1)行操作
print(f'There are {data_train.isnull().any().sum()} columns in train dataset with missing values.') #等价于print('There are {} columns in train dataset with missing values.'.format(data_train.isnull().any().sum
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值