在python中每n行数据帧计算最大/最小

问题描述 投票:0回答:3

我想为df的每n行计算最小值/最大值,比如说10,但是使用df.rolling(10).max()给出0-9、1-10、2-11行等的值。我想要0-9、10-19、20-29等

对于大型数据集,有没有一种很好的方法?

谢谢

python pandas dataframe max min
3个回答
1
投票

成功的关键是按np.arange(len(df.index))// 10]分组>10(组大小)为您需要的其他任何值)。

假设您有3列来计算最小/最大(['A','B','C']

),您可以运行:
df.groupby(np.arange(len(df.index)) // 10)[['A', 'B', 'C']].agg(['min', 'max'])

0
投票

用途:


-1
投票

this answer的启发,我建议尝试以下代码:

N = 10  # set to the group size
s.groupby(s.index // N).max()
s.groupby(s.index // N).min()
© www.soinside.com 2019 - 2024. All rights reserved.