首页 > 解决方案 > 熊猫时间序列统计一个事件直到特定日期

问题描述

我是熊猫初学者,我正在使用来自https://www.kaggle.com/jordangoblet/atp-tour-20002016的网球数据,因此数据样本将是这样的

ATP Location    Tournament  Date        Series          Court   Surface  Round  Best_of    Winner       Loser
1    Adelaide    AO         3/01/2000 International    Outdoor   Hard    1st    3          Dosedel S.   Ljubicic I.
1    Adelaide    AO         3/01/2000 International    Outdoor   Hard    1st    3          Enqvist T.   Clement A

屏幕截图 ,我正在尝试生成以下功能:

标签: python-3.xpandaspandas-groupby

解决方案


尝试根据事件的日期变量对数据框进行切片。然后您可以groupby在辅助列上使用该功能。获取辅助列:

df['aux'] = df.apply(lambda x: '_'.join(sorted([x['Winner'], x['Loser']])), axis = 1)

分组后,您可以使用这些组来计算它们的任何类型的统计信息(如您提到的那些)。

如果您想获得整个历史的累积统计信息,您可以cumsum在组上使用和类似的功能(如果您确保数据是根据事件时间戳排序的)。

如果还有什么不清楚的地方或者你被卡住了,请告诉我。


推荐阅读