将序列分割成大于阈值的细分,并将统计信息应用于细分

时间:2018-09-11 10:51:52

标签: python pandas

我有一个系列x,值分别为yz。我想获得x大于y的{​​{1}}段的集合。在此段上,我想计算两个统计量:段的长度,以0.5为单位,以及段上的x的平均值。我想丢弃z为0.5或更小的所有数据。用大熊猫最优雅的方式是什么?

y

1 个答案:

答案 0 :(得分:1)

选择值:

df = df[df['y'] > 0.5]

发现新细分:

df['is_new_segment'] = df.reset_index()['index'].diff() > 0.15

数字段:

df['segment'] = df['is_new_segment'].cumsum()

按段分组并应用您的功能(例如,在这里mean

df.groupby('segment')['z'].mean()