python - 获取并绘制 pandas 数据框中的唯一值计数

标签 python pandas dataframe

我有一个数据框df,其中包含列df.time,它概述了月份和时间,以及df.names,因此它看起来像这个

   time        names
0  2020-01     Martha
1  2020-01     Jeff
2  2020-01     Geronimo
3  2020-02     Mike
4  2020-02     Michelle
...

我想获取每个唯一值的名称总数,并将其绘制在条形图中,其中 x 上的月份数以及 y 上的按月的值计数。 我试过了

x=df.time.unique()
y=df.groupby('time').size().sort_values(ascending=True)

对于 y,我正在查找 time 中每个唯一日期的名称总数。但是,虽然 y 确实计算了每个时间值的总数,但它不按顺序排列,我不知道如何链接它们。

最佳答案

也许你的想法是这样的?

>>> df.groupby('time')['names'].value_counts(normalize=True).unstack().plot(kind='bar')

关于python - 获取并绘制 pandas 数据框中的唯一值计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74159797/

相关文章:

python - Pandas DatetimeIndex 截断错误

python - Pandas 堆叠条形图具有不同的形状

python - 使用 ddof=1 为什么 Pandas groupby std 慢得多?

pandas - 如何通过每行的第一个单词将 pandas 中的行汇总为该第一个单词的聚合?

python - Pandas DataFrame 自动将错误值作为索引

Python 从 Web 抓取的 URL 下载数据文件

python - 使用 .loc 选择 DatetimeIndex 行范围(Pandas Python 3)

Python - 将相邻元素分组到列表中的元组中?

python - 在 pandas 数据框中重新排序数据

python - 使用日期的 Pandas 数据框中的列算法