如何计算聚类结果中水平值之间的差异?



>假设我们有一个包含两列的熊猫数据帧:

Col1  Col2         
0    15         
0    20         
0    30         
1    40         
1    45         
0    50     
0    55         
2    60         
2    70

我需要根据其他数据帧或数组中的 col2 计算这个:

Col1  Col2     
0     30-15=15    
1     45-40=5     
0     55-50=5     
2     70-60=10

最后的结果:

Col1  Col2     
0    15    
1    5     
0    5     
2    10

谢谢

使用np.ptp(峰到峰(

df.groupby(df.Col1.ne(df.Col1.shift()).cumsum()).Col2.apply(np.ptp)

Col1  Col2     
0    15    
1    5     
0    5     
2    10

最新更新