pandas计算过去N行中出现的次数

我需要帮助查找值在过去的“n”行中出现的次数。我知道,但我想不出该怎么办。

下面的“X”标记给定的值并计算n=3的结果,因此每第3行,它就会计算“1”在过去3行中出现的次数。

X   results (n=3)
1   1
1   2
1   3
0   2
0   1
0   0
0   0
1   1
1   2

解决方案:试试rolling

df['out'] = df.X.rolling(3,min_periods=1).sum()
Out[273]: 
0    1.0
1    2.0
2    3.0
3    2.0
4    1.0
5    0.0
6    0.0
7    1.0
8    2.0
Name: X, dtype: float64

 

posted @ 2022-06-25 09:05  C羽言  阅读(89)  评论(0)    收藏  举报