我有三列,分别是:时间戳记,得分(是整数)和方向(列)。
我使用的Excel公式:
=IF(O16="Pos",SUMIF($O2:$O16,"Pos",$Q2:$Q16),"")
我正在尝试使用多个条件进行计算。因此,理想情况下,目标是在15分钟结束时如果“方向”为“排名”,则计算“得分”列的总和。我的时间戳记是从12:00到14:00,所以在12.15,我需要检查“方向”列的12:15行是否为正,如果是,那么我将从12:00到12:15的分数相加并附加这些值到名为Positive的新列。如果在12:15的那一行是负数,那么我将添加并附加到负数列。
我有三列,分别是:时间戳记,得分(是整数)和方向(列)。
我尝试了这个,但是我不知道如何添加频率,这给了我错误。
df.groupby(pd.Grouper(freq='15min').apply(lambda x : x['Score'][x['Direction']=='Pos'].cumsum()).reset_index(level=0,drop=True))
示例
Time Score Direction
12:00 10 Pos
12:15 20 Pos
12:12 1 Neg
12:30 2 Neg
12:32 1 Nut
12:45 3 Nut
我需要添加的列是:
Pos Neg Nut
0 0 0
30 0 0
0 3 0
0 0 4