开发者社区> 问答> 正文

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

假设我们有一个两列的panda dataframe:

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

我需要计算这个基于col2在其他dataframe或数组:

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

谢谢你! 问题来源StackOverflow 地址:/questions/59383922/how-to-calculated-the-difference-between-levels-values-based-in-clusterization-r

展开
收起
kun坤 2019-12-26 15:46:20 430 0
1 条回答
写回答
取消 提交回答
  • 使用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
    
    2019-12-26 15:46:27
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
重新定义计算的边界 立即下载
用计算和数据去改变整个世界 立即下载
图计算优化技术探索 立即下载