Python|使用Missingno库可视化缺失值(NaN)

发布时间:2024年01月05日

在真实世界数据集的情况下,数据集中的某些值丢失是非常常见的。我们将这些缺失值表示为NaN(非数字)值。但是要构建一个好的机器学习模型,我们的数据集应该是完整的。这就是为什么我们使用一些插补技术来用一些可能的值替换NaN值。但在此之前,我们需要很好地理解NaN值在数据集中的分布情况。

Missingno库提供了一种非常好的方式来可视化NaN值的分布。Missingno是一个Python库,与Pandas兼容。

安装库

pip install missingno

示例

# Program to visualize missing values in dataset 
  
# Importing the libraries 
import pandas as pd 
import missingno as msno 
  
# Loading the dataset 
df = pd.read_csv("kamyr-digester.csv") 
  
# Visualize missing values as a matrix 
msno.matrix(df) 

输出
在这里插入图片描述
使用这个矩阵,您可以非常快速地找到数据集中的缺失模式。在我们的示例中,列AAWhiteSt-4和SulphidityL-4具有类似的缺失值模式,而UCZAA显示不同的模式。

条形图

# Program to visualize missing values in dataset 

# Importing the libraries 
import pandas as pd 
import missingno as msno 

# Loading the dataset 
df = pd.read_csv("kamyr-digester.csv") 

# Visualize the number of missing 
# values as a bar chart 
msno.bar(df) 

输出
在这里插入图片描述
这个条形图让你了解每列中有多少缺失值。在我们的示例中,AAWhiteSt-4和SulphidityL-4包含最多的缺失值,其次是UCZAA。

热力图

# Program to visualize missing values in dataset 

# Importing the libraries 
import pandas as pd 
import missingno as msno 

# Loading the dataset 
df = pd.read_csv("kamyr-digester.csv") 


# Visualize the correlation between the number of 
# missing values in different columns as a heatmap 
msno.heatmap(df) 

输出
在这里插入图片描述
热图显示每2列之间缺失的相关性。在我们的例子中,AAWhiteSt-4和SulphidityL-4之间的相关性为1,这意味着如果它们中的一个存在,那么另一个也存在。

接近-1的值意味着如果一个变量出现,则另一个变量很可能缺失。
接近0的值意味着两个变量的缺失值的出现之间没有相关性。
接近1的值意味着如果一个变量出现,则另一个变量很可能存在。

参考:https://github.com/ResidentMario/missingno

文章来源:https://blog.csdn.net/qq_42034590/article/details/134104959
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。