我正在尝试计算数据框中每个日期发生的事件数。我创建了一个新的数据框,其中的日期只出现一次,我将如何计算和汇总每个日期发生的事件。
到目前为止,我还没有找到合适的方法。
这是我拥有的数据示例:
date event
01/01/10 1
01/01/10 1
01/01/10 2
02/01/10 1
04/01/10 3
我希望得到这个结果
date event1 event2 event3
01/01/10 2 1 0
02/01/10 1 0 0
04/01/10 0 0 1
我们将不胜感激地欢迎任何建议
最佳答案
使用pd.crosstab
:
pd.crosstab(df['date'], df['event'])
输出:
event date 1 2 3
0 01/01/10 2 1 0
1 02/01/10 1 0 0
2 04/01/10 0 0 1
而且,我们可以像这样进行一些清理和重命名:
pd.crosstab(df['date'], df['event'])\
.add_prefix('event')\
.rename_axis(None, axis=1)\
.reset_index()
输出:
date event1 event2 event3
0 01/01/10 2 1 0
1 02/01/10 1 0 0
2 04/01/10 0 0 1
关于python - 计算python数据框中每个日期的事件数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57076771/