📜  def plot_null_matrix(df, figsize=(18,15)): # 启动图形 plt.figure(figsize=figsize) # 根据值是否为布尔数据框 - Python (1)

📅  最后修改于: 2023-12-03 15:00:23.510000             🧑  作者: Mango

绘制缺失值矩阵图

函数介绍

该函数用于绘制输入数据框中缺失值的矩阵图。它基于一个已有的 Python 库 matplotlib。

参数说明

该函数接受一个数据框和一个可选的 figsize 参数(默认为(18,15)),其控制输出图形的宽度和高度。

返回值

该函数图形输出,并以markdown格式返回代码片段以显示输出图形。

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

def plot_null_matrix(df, figsize=(18,15)):
    # 判断输入数据框是否为布尔类型
    if isinstance(df, pd.DataFrame):
        # 将原始数据框中的空值转换成布尔类型的数据框
        boolean_matrix = df.isnull()
    else:
        boolean_matrix = df
    # 将为空值的区域绘制成白色,非空值区域绘制成黑色
    plt.figure(figsize=figsize)
    plt.imshow(boolean_matrix, interpolation='none', cmap='viridis')
    plt.title('Missing Values')
    plt.colorbar()
    plt.show()
    return f"![missing_values]({filename}.png)"

采用该函数绘制数据框的缺失值图。

df = pd.DataFrame(np.random.rand(10, 30))
df.iloc[2:4, 3:5] = np.nan
df.iloc[5:8, 7:23] = np.nan

filename = "missing_values"
img = plot_null_matrix(df)

print(img)

输出结果如下:

missing_values