Python系列 | missingno模块(缺失值可视化)
import missingno
·
missingno 是一个可以将缺失值情况进行可视化的库,十分便捷、好用。本文以 boston 数据集为例,对 missingno 的使用进行示例讲解。
目 录
1. missingno 下载及安装
下载和安装非常方便,直接使用 pip 安装即可:
pip install missingno
2. 导入数据集
import missingno as msno
from sklearn.datasets import load_boston
import pandas as pd
import numpy as np
data,target = load_boston()['data'],load_boston()['target']
df = pd.concat([pd.DataFrame(data,columns=[str('features'+str(i)) for i in range(13)]),pd.DataFrame(target,columns=['target'])],axis=1)
df.head(10)
由于原数据不存在缺失值,这里选择将所有等于 0 的元素替换为缺失值:
df1 = df.where(df != 0,np.nan)
df1.isnull().sum()
现在数据集中的 features1 和 features 3 出现了缺失值,下面便可通过 missingno 对缺失值情况进行可视化。
3. missingno 缺失值可视化
3.1 msno.matrix
msno.matrix(df1, labels=True) # 无效数据密度显示
若是图中白线越多,则说明缺失值越多。左侧纵坐标上的两个数值为样本数量的始末(即从 1 开始数有 506 条数据),右下角数字 12 表示数据中共有 12 列不存在缺失值,右侧数字 14 表示数据共计 14 列。
3.2 msno.bar
msno.bar(df1) # 条形图显示
上图高度越低说明缺失值越多,左侧纵坐标为数据非缺失值所占的百分比,右侧纵坐标为数据非缺失值的数量。
3.3 msno.heatmap
msno.heatmap(df1) # 热图相关性显示
上方热图用以表示存在缺失值的特征之间的相关性,即某特征存在缺失值时另一特征也会存在缺失值的相关程度。上图的热图中没有数字,说明特征之间不存在缺失的相关性。
若是热图中 features1 和 features3 出现热度值 1,则说明 features1 缺失时,features3 也一定缺失。
3.4 msno.dendrogram
msno.dendrogram(df1)#树状图显示
missingno 的树状图采用层次聚类算法对特征进行聚类,如上图所示,左侧的特征数据为一类,彼此的距离为 0(因为没有缺失数据),右侧的特征数据为另一类(两个存在缺失数据的特征)。
点击阅读全文
更多推荐
活动日历
查看更多
直播时间 2025-02-26 16:00:00


直播时间 2025-01-08 16:30:00


直播时间 2024-12-11 16:30:00


直播时间 2024-11-27 16:30:00


直播时间 2024-11-21 16:30:00


目录
所有评论(0)