【问题标题】:Pandas - How to dynamically get min and max value of each session in the columnPandas - 如何动态获取列中每个会话的最小值和最大值
【发布时间】:2014-02-14 16:18:43
【问题描述】:

所以我有一个类似这样的数据框:

timestamp   |   name   
------------+------------
   1        |    a
   1        |    b
   2        |    c
   2        |    d
   2        |    e
   3        |    f
   4        |    g

基本上我想得到每个时间戳会话的最小值和最大值(由唯一的时间戳值定义,本示例中有 4 个会话),预期结果将是这样的:

timestamp   |   name   | start  | end  
------------+----------+--------+------
   1        |    a     |   1    |  2
   1        |    b     |   1    |  2
   2        |    c     |   2    |  3
   2        |    d     |   2    |  3
   2        |    e     |   2    |  3
   3        |    f     |   3    |  4
   4        |    g     |   4    |  4

我正在考虑时间戳列上的索引,然后将索引“向上移动”1,但这种方法不适用于上面示例中的第四个存储桶。

非常感谢任何帮助!

【问题讨论】:

    标签: python pandas dataframe


    【解决方案1】:

    试试numpy.clip(),比如df['end']=numpy.clip(df['timestamp']+1, 0, 4)

    【讨论】:

      猜你喜欢
      • 2021-12-04
      • 1970-01-01
      • 2020-09-22
      • 2010-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多