数据探索性分析

本文详细介绍了使用Python进行数据探索性分析的步骤,包括数据加载、缺失值检查、异常值检测、预测值分布分析、特征类型分析,并通过相关性、偏度、峰度和可视化手段深入理解数据,最后利用pandas_profiling生成数据报告,为后续的数据建模做好准备。
摘要由CSDN通过智能技术生成

目录

导库

载入数据

载入训练集测试集数据

简略观察数据(head,shape)

数据总览

数据相关统计量(describe)

数据类型(info)

判断数据缺失和异常

异常值检测(nan)

查看预测值分布

总体分布概况(无界约翰逊分布等)

查看skewness, kurtosis

查看预测值具体频数

类别特征(unique分布)

数字特征

数字特征分析

相关性分析

偏度和峰值

关系可视化

多变量互相回归关系可视化

类型特征分析

unique分布

类别特征箱形图

类别特征小提醒图

类别特征柱形图

类别频数可视化(count_plot)

生成数据报告

pandas_profiling


导库

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import missingno as msno  # 缺失值处理可视化模块

载入数据

  1. 载入训练集测试集数据

  2. 简略观察数据(head,shape)

data = pd.read_csv('data.csv')
test = pd.read_csv('test.csv')

data.head().append(data.tail())
test.head().append(test.tail())
data.shape
test.shape

数据总览

  1. 数据相关统计量(describe)

  2. 数据类型(info)

data.describe()
test.describe()

data.info()
test.info()

判断数据缺失和异常

  1. 异常值检测(nan)

data.isnull().sum()
test.isnull().sum()
# nan可视化
missing = data.isnull().sum()
missing = missing[missing > 0]
missing.sort_values(inplace=True)
missing.plot.bar()

 

 

msno.matrix(data.sample(250),figsize=(10, 6))  
# msno.matrix(data.sample(250),figsize=(10, 6),color=(0.5, 0.15, 0.65))
msno.bar(data.sample(500),figsize=(10, 6))

msno.matrix(test.sample(250),figsize=(10, 6))
msno.bar(test.sample(500),figsize=(10, 6))

data["Cabin"].value_counts()  # 查看具体列的类别数量 

 

查看预测值分布

  1. 总体分布概况(无界约翰逊分布等)

  2. 查看skewness, kurtosis

## 1) 总体分布概况(无界约翰逊分布等) 经约翰变换后服从正态分布的随机变量的概率分布
import scipy.stats as st
y = data['Survived']
plt.figure(1); plt.title('Johnson SU')  # 约翰逊分布
sns.distplot(y, kde=False, fit=st.johnsonsu)
plt.figure(2); plt.title('Normal')  # 正态分布
sns.distplot(y, kde=False, fit=st.norm)
plt.figure(3); plt.title('Log Normal')
sns.distplot(y, kde=False, fit=st.lognorm)  # 对数正态分布


## 2) 查看skewness偏度 和 kurtosis峰度
# 偏度: 是描述数据分布形态的统计量,其描述的是某总体取值分布的对称性,简单来说就是数据的不对称程度,绝对值越大表明数据分
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值