第一步:导入数据
1.加载相应的pandas与os库
import pandas as pd
import os
csv_path = open( "data.csv",encoding='gbk')
data = pd.read_csv(csv_path)
然后查看数据首5行
data.head()
统计下数据里有的数据类型,缺失情况,数据量大小:
data.info()
从得出的数据大概情况可以看到数据中既有浮点型数据70列、整数型13列、object型7列,数据在整体上是相当完整的,除了student_feature这个标签有较多缺失值Nan以外,其他数据仅有很小的缺失,因此接下来我们需要对数据进行无关特征的剔除及缺失值的填充。
2.剔除无关、缺失严重标签
在此次分析中,我们的目标是预测贷款用户是否逾期,结果标签是“status”,因此,我们对无关特征与缺失严重的“student_featyre”标签进行删除。
data = data.drop(['trade_no','student_feature','latest_query_time','bank_card_no','source','loans_latest_time', 'source', 'Unnamed: 0', 'id_name'], axis=1)
data.head()
3.处理缺失值
def find_na_column(a):
miss_columns = []
for column in a:
if sum(pd.isnull(a[column])) > 0:
miss_columns.append(column)
return miss_columns
for col in missColumns:
data[col]=data[col].fillna(data[col].mean())
find_na_column(data)
在这里使用了(https://blog.csdn.net/ljfwz153076024/article/details/88072922)这位同学使用的填充方法,没办法,自己想不出,水平有限。
4.数据切分
from sklearn.model_selection import train_test_split
train_set, test_set = train_test_split(data, test_size=0.3, random_state=2018)
5.总结:平时到手少,写的时候脑袋空空,空空如也,果然平时还是得多读书多敲代码。