gpt4 book ai didi

python - plt.hist() 仅针对特定频率; Python

转载 作者:行者123 更新时间:2023-12-04 10:15:34 30 4
gpt4 key购买 nike

我有一个巨大的 DataFrame ('df'),其中包含不同的列,其中一个将名称存储为字符串值 ('name')。现在,我想简单地绘制一个直方图,其中包含 DataFrame 中每个名称的频率。但是,数据包含数千个唯一名称,这就是为什么我只想为某个频率的名称绘制直方图:

df.name.value_counts() > 100

我可以为情节提供这种过滤器/掩码吗?我已经尝试在 plt.hist() 中使用“范围”参数:
plt.hist(df['name'], range=[100, 151]);

但它仍然显示所有其他名称但没有它们的频率......

最佳答案

方法df.name.value_counts()返回直方图的内容。可以使用常用表达式屏蔽此返回值。

name_frequencies = df.name.value_counts()
most_freq_name_freqs = name_frequencies[name_frequencies > 100]

要绘制已经直方图的数据的直方图,使用 plt.hist 很有用。与 weights争论。
plt.hist(most_freq_name_freqs.index, weights=most_freq_name_freqs)

通过这样做,您可以创建一个直方图,每个 bin 有一个条目,但 bin 内容按权重进行缩放。由于权重是预先计算的频率,因此您可以获得名称频率的直方图。

关于python - plt.hist() 仅针对特定频率; Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61079128/

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