Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中计算数据帧中每个日期的事件数_Python_Pandas - Fatal编程技术网

在python中计算数据帧中每个日期的事件数

在python中计算数据帧中每个日期的事件数,python,pandas,Python,Pandas,我试图统计数据帧中每个日期发生的事件数。我已经创建了一个新的数据框架,其中日期只发生一次,我将如何对每个日期发生的事件进行计数和汇总 到目前为止,我还没有找到合适的方法 这是我拥有的数据的一个示例: 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

我试图统计数据帧中每个日期发生的事件数。我已经创建了一个新的数据框架,其中日期只发生一次,我将如何对每个日期发生的事件进行计数和汇总

到目前为止,我还没有找到合适的方法

这是我拥有的数据的一个示例:

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。交叉表

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
       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
我们可以像这样进行清理和重命名:

pd.crosstab(df['date'], df['event'])\
  .add_prefix('event')\
  .rename_axis(None, axis=1)\
  .reset_index()
输出:

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
       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

使用pd.交叉表

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
       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
我们可以像这样进行清理和重命名:

pd.crosstab(df['date'], df['event'])\
  .add_prefix('event')\
  .rename_axis(None, axis=1)\
  .reset_index()
输出:

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
       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

通过输入和预期输出使您的问题更清楚Hanks Ankit Agrawal,仅供将来参考,我将如何使用您编辑的表格设置问题?不客气!只需将它们标记为代码块再次感谢Ankit。复制粘贴问题中的表格,选择文本并单击
{}
。您可以查看工具栏右角的帮助按钮(the?),该按钮位于您编写问题的文本区域顶部。通过输入和预期输出使您的问题更清晰Hanks Ankit Agrawal,仅供将来参考,我将如何使用您精心编辑的表设置问题?不客气!只需将它们标记为代码块再次感谢Ankit。复制粘贴问题中的表格,选择文本并单击
{}
。您可以查看工具栏右角文本区域顶部的“帮助”按钮(在?)来编写问题。