gpt4 book ai didi

python - 如何将两列 Pandas 数据框的元素绘制为直方图?

转载 作者:太空宇宙 更新时间:2023-11-03 13:12:58 26 4
gpt4 key购买 nike

我有以下 Pandas 数据框:

    A                    B

1 3
0 2
1 4
0 1
0 3

我想绘制给定 A 的 B 实例的频率,如下所示:

     |
|
| __
B | | |
| ___ | |
| | | | |
| | | | |
|__|_|__|__|______________
A

因此,我尝试了以下方法:

df2.groupby([df.A, df.B]).count().plot(kind="bar")

但是,我收到以下异常:

TypeError: Empty 'DataFrame': no numeric data to plot

因此,我的问题是如何在给定 A 的频率的情况下绘制 B 中元素的频率?

最佳答案

听起来这就是你想要的:您可以使用 Series.value_counts()

print(df['B'].value_counts().plot(kind='bar'))

enter image description here

如果您不想对 value_count 进行排序,您可以这样做:

print(df['B'].value_counts(sort=False).plot(kind='bar'))

enter image description here

关于python - 如何将两列 Pandas 数据框的元素绘制为直方图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38734460/

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