1.数据清洗
实验背景
在进行贝叶斯分类之前重点是对数据进行预处理操作,如,缺失值的填充、将文字表述转为数值型、日期处理格式(处理成“年-月-日”三列属性或者以最早时间为基准计算差值)、无关属性的删除等方面。数据中存在大量连续值的属性,不能直接计算似然,需要将连续属性离散化。
实验数据
训练数据集train.csv包含9000条数据,测试数据集test.csv包含1000条数据。注意,训练集和测试集中都有缺失值存在。
以下是字段说明:
字段 | 描述 |
---|---|
loan_id | 贷款记录唯一标识 |
user_id | 借款人唯一标识 |
total_loan | 贷款数额 |
year_of_loan | 贷款年份 |
interest | 当前贷款利率 |
monthly_payment | 分期付款金额 |
grade | 贷款级别 |
employment_type | 所在公司类型 |
industry | 工作领域 |
work_year | 工作年限 |
home_exist | 是否有房 |
censor_status | 审核情况 |
issue_date | 贷款发放的月份 |
use | 贷款用途类别 |
post_code | 贷款人申请时邮政编码 |
region | 地区编码 |
debt_loan_ratio | 债务收入比 |
del_in_18month | 借款人过去18个月逾期30天以上的违约事件数 |
scoring_low | 借款人在贷款评分中所属的下限范围 |
scoring_high | 借款人在贷款评分中所属的上限范围 |
known_outstanding_loan | 借款人档案中未结信用额度的数量 |
known_dero | 贬损公共记录的数量 |
pub_dero_bankrup | 公开记录清除的数量 |
recircle_bal | 信贷周转余额合计 |
recircle_util | 循环额度利用率 |
initial_list_status | 贷款的初始列表状态 |
app_type | 是否个人申请 |
earlies_credit_mon | 借款人最早报告的信用额度开立的月份 |
title | 借款人提供的贷款名称 |
policy_code | 公开可用的策略代码=1新产品不公开可用的策略代码=2 |
f系列匿名特征 | 匿名特征f0-f4,为一些贷款人行为计数特征的处理 |
early_return | 借款人提前还款次数 |
early_return_amount | 贷款人提前还款累积金额 |
early_return_amount_3mon | 近3个月内提前还款金额 |
isDefault | 贷款是否违约(预测标签) |
参考资料
Pandas是一个强大的分析结构化数据的工具集,基于NumPy构建,提供了高级数据结构和数据操作工具,它是使Python成为强大而高效的数据分析环境的重要因素之一。
-
一个强大的分析和操作大型结构化数据集所需的工具集
-
基础是NumPy,提供了高性能矩阵的运算
-
提供了大量能够快速便捷地处理数据的函数和方法
-
应用于数据挖掘,数据分析
-
提供数据清洗功能
实验步骤
-
读取训练集和测试集,选择方法进行数据清洗
-
填充空值,可以选择填充众数或者平均数或者其他
-
文字表述转为数值型
-
时间格式处理
-
无关属性的删除.选择皮尔森系数法,方差法或者其他方法
-
连续属性离散化.浮点数取整,等距法或者其他方法
-
生成清洗后的CSV文件
实验结果
清洗前:
清洗后: