小编Nik*_*y G的帖子

在 df 列中指定可变窗口大小的 Pandas rolling_max

我想计算一个 pandas 列的滚动最大值,其中窗口大小不同,并且是当前行索引与满足特定条件的行之间的差异。

所以,作为一个例子,我有:

df = pd.DataFrame({'a': [0,1,0,0,0,1,0,0,0,0,1,0],
                   'b': [5,4,3,6,1,2,3,4,2,1,7,8]})
Run Code Online (Sandbox Code Playgroud)

我想要 df.b 的滚动最大值,因为上一次 df.a == 1。即我想得到这个:

     a   b   rm
 0   0   5   NaN  <- no previous a==1
 1   1   4   4    <- a==1
 2   0   3   4
 3   0   6   6
 4   0   1   6
 5   1   2   2    <- a==1
 6   0   3   3
 7   0   4   4
 8   0   2   4
 9   0   1   4
10   1   7   7    <- a==1
11   0   8   8
Run Code Online (Sandbox Code Playgroud)

我的 df 有一个没有间隙的整数索引,所以我尝试这样做: …

python pandas

5
推荐指数
1
解决办法
1677
查看次数

标签 统计

pandas ×1

python ×1