如何绘制groupby的value_counts

发布于 2025-02-13 11:29:51 字数 432 浏览 2 评论 0原文

我每年都有一个具有多个观察结果的数据框。

df = pd.DataFrame({"year": [2000,2000,2000,2001,2001,2001], "A": [1,1,0,0,1,0], "B": [4,4,6,10,10,10]})


    year    A   B
0   2000    1   4
1   2000    1   4
2   2000    0   6
3   2001    0   10
4   2001    1   10
5   2001    0   10

我按年进行对

df.groupby("year").A.value_counts()

year  A
2000  1    2
      0    1
2001  0    2
      1    1

I have a dataframe with multiple observations in each year.

df = pd.DataFrame({"year": [2000,2000,2000,2001,2001,2001], "A": [1,1,0,0,1,0], "B": [4,4,6,10,10,10]})


    year    A   B
0   2000    1   4
1   2000    1   4
2   2000    0   6
3   2001    0   10
4   2001    1   10
5   2001    0   10

I group it by year and examine value_counts for column A.

df.groupby("year").A.value_counts()

year  A
2000  1    2
      0    1
2001  0    2
      1    1

How do I get a barchart showing the number of times A=1 in each year?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

迷荒 2025-02-20 11:29:51

尝试unstack index a进入列中,然后绘制:

df.groupby("year").A.value_counts().unstack(level=1).plot(kind='bar')

“输入图像描述在这里”

Try unstack index A into columns and then plot:

df.groupby("year").A.value_counts().unstack(level=1).plot(kind='bar')

enter image description here

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文