我有一个包含两列的 DataFrame。其中一个包含时间戳,另一个包含一些 Action 的 ID。类似的东西:
2000-12-29 00:10:00 action1
2000-12-29 00:20:00 action2
2000-12-29 00:30:00 action2
2000-12-29 00:40:00 action1
2000-12-29 00:50:00 action1
...
2000-12-31 00:10:00 action1
2000-12-31 00:20:00 action2
2000-12-31 00:30:00 action2
我想知道在某一天执行了多少次某种类型的操作。 IE。对于每一天,我需要计算 actionX 的出现次数,并针对每个日期绘制此数据,X 轴为日期,Y 轴为 actionX 的出现次数。
当然,我可以通过遍历我的数据集来天真地计算每天的 Action 。但是使用 pandas/matplotlib 的“正确方法”是什么?
最佳答案
您可以使用
获取计数df.groupby([df.index.date, 'action']).count()
或者你可以直接用这个方法画图
df.groupby([df.index.date, 'action']).count().plot(kind='bar')
您也可以只将结果存储到 count
中,然后单独绘制。这是假设您的索引已经是 datetimeindex 格式,否则请按照上面@mkln 的说明进行操作。
关于python - 绘制 Pandas DataFrame 中出现的次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21331722/