gpt4 book ai didi

python - 使用 matplotlib 的分类变量的直方图

转载 作者:行者123 更新时间:2023-12-05 00:44:20 28 4
gpt4 key购买 nike

我在 pandas 数据框中有一列,其中包含三个可能的分类值。当我尝试使用 matplotlib 中的 plt.hist(data['column']) 绘制它时,直方图条未与 x 轴刻度对齐,并且它们的间距不均匀。我该如何解决这个问题?

enter image description here

最佳答案

直方图用于绘制数值变量(连续或离散)的频率分布。分类变量的频率分布最好用条形图显示。为此,您首先需要使用 value_counts 计算每个类别的频率。然后你可以方便地直接用 pandas plot.bar 绘制它.或者如果您愿意,也可以使用 matplotlib,如下所示。

import numpy as np               # v 1.19.2
import pandas as pd # v 1.2.3
import matplotlib.pyplot as plt # v 3.3.4

data = pd.DataFrame(dict(column=np.repeat(['F', 'M', '--'], [11000, 13000, 3000])))

Pandas

data['column'].value_counts().plot.bar(rot=0)

pandas_bar


matplotlib

categories = data['column'].value_counts().index
counts = data['column'].value_counts().values
plt.bar(categories, counts, width=0.5)

matplotlib_bar

关于python - 使用 matplotlib 的分类变量的直方图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67311558/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com