竞赛-贷款违约预测-02 探索性数据分析(EDA——Exploratory Data Analysis)

目标:

  • 学习如何对数据集整体概况进行分析,包括数据集的基本情况(缺失值,异常值)
  • 学习了解变量间的相互关系、变量与预测值之间的存在关系

内容:

  1. 数据总体了解:
    • 读取数据集并了解数据集大小,原始特征维度;
    • 通过info熟悉数据类型;
    • 粗略查看数据集中各特征基本统计量;
  2. 缺失值和唯一值:
    • 查看数据缺失值情况
    • 查看唯一值特征情况
  3. 深入数据-查看数据类型
    • 类别型数据
    • 数值型数据
      - 离散数值型数据
      - 连续数值型数据
  4. 数据间相关关系
    • 特征和特征之间关系
    • 特征和目标变量之间关系
  5. 用pandas_profiling生成数据报告

代码示例

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

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

读取文件

data_train = pd.read_csv('./train.csv')
data_test_a = pd.read_csv('./testA.csv')
  • 读取文件的部分(适用于文件特别大的场景)
    • 通过nrows参数,来设置读取文件的前多少行,nrows是一个大于等于0的整数。
    • 分块读取
data_train_sample = pd.read_csv("./train.csv",nrows=5)

总体了解

data_test_a.shape
data_train.shape
##查看数据列名
data_train.columns
##通过info()来熟悉数据类型
data_train.info()
##总体粗略的查看数据集各个特征的一些基本统计量
data_train.describe()

查看数据集中特征缺失值,唯一值等

  • 缺失值
print(f'There are {data_train.isnull().any().sum()} columns in train dataset with missing values.')
  • 查看缺失特征中缺失率大于50%的特征
have_null_fea_dict = (data_train.isnull().sum()/len(data_train)).to_dict()
fea_null_moreThanHalf = {}
for key,value in have_null_fea_dict.items():
    if value > 0.5:
        fea_null_moreThanHalf[key] = value
  • 具体的查看缺失特征及缺失率
# nan可视化
missing = data_train.isnull().sum()/len(data_train)
missing = missing[missing > 0]
missing.sort_values(inplace=True)
missing.plot.bar()
  • 查看训练集测试集中特征属性只有一值的特征
one_value_fea = [col for col in data_train.columns if data_train[col].nunique() <= 1]
one_value_fea_test = [col for col in data_test_a.columns if data_test_a[col].nunique() <= 1]

总结:47列数据中有22列都缺少数据,这在现实世界中很正常。‘policyCode’具有一个唯一值(或全部缺失)。有很多连续变量和一些分类变量。

  • 查看特征的数值类型有哪些,对象类型有哪些
    1. 数值型和数值型关联
    2. 类别型和类别型关联
    3. 数值型和类别型关联
numerical_fea = list(data_train.select_dtypes(exclude=['object']).columns)
category_fea = list(filter(lambda x: x not in numerical_fea,list(data_train.columns)))
numerical_fea
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页