Python|使用 Missingno 库可视化缺失值 (NaN) 值
在真实数据集的情况下,数据集中的某些值丢失是很常见的。我们将这些缺失值表示为 NaN(非数字)值。但是要建立一个好的机器学习模型,我们的数据集应该是完整的。这就是我们使用一些插补技术将 NaN 值替换为一些可能值的原因。但在此之前,我们需要很好地了解 NaN 值在我们的数据集中是如何分布的。
Missingno库提供了一种非常好的方法来可视化 NaN 值的分布。 Missingno 是一个Python库,与 Pandas 兼容。
安装库 -
pip install missingno
要获取代码中使用的数据集,请单击此处。
矩阵 :
使用此矩阵,您可以非常快速地找到数据集中的缺失模式。在我们的示例中, 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 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)
输出:
热图:
热图显示每 2 列之间缺失的相关性。在我们的示例中,AAWhiteSt-4 和 SulphidityL-4 之间的相关性为 1,这意味着如果其中一个存在,那么另一个必须存在。
A value near -1 means if one variable appears then the other variable is very likely to be missing.
A value near 0 means there is no dependence between the occurrence of missing values of two variables.
A value near 1 means if one variable appears then the other variable is very likely to be present.
# 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)
输出:
参考:https://github.com/ResidentMario/missingno