【问题标题】:Get max value in pandas dataframe [duplicate]在熊猫数据框中获取最大值[重复]
【发布时间】:2019-01-17 09:15:56
【问题描述】:

我想在 Pandas 数据框中创建一个新列,其中包含截至该时间点的另一列的最大值。
例如:

time  | value | max value   
 1        2        2  
 2        4        4  
 3        3        4  
 4        3        4 
 5        6        6

有人知道如何为“最大值”列创建代码吗?
谢谢

【问题讨论】:

  • 我想我必须澄清我的问题。第一列是 Dataframe 的索引,它是一个时间戳。 “最大值”列应包括“值”列在行中特定日期之前的最大值。
  • j。 DOE 是否愿意编写更可靠的数据样本以确保我们满足您的要求?

标签: python-3.x pandas dataframe time-series


【解决方案1】:

使用cummax:

df['max value'] = df['value'].cummax()

输出:

   time  value  max value
0     1      2          2
1     2      4          4
2     3      3          4
3     4      3          4
4     5      6          6

【讨论】:

    【解决方案2】:

    你说的是cummax的定义。

    出于好奇,您也可以使用expanding,如果您想对其应用自定义功能,这可能会很有用。

    df.value.expanding().max() # or .apply(custom_function)
    
    0    2.0
    1    4.0
    2    4.0
    3    4.0
    4    6.0
    

    【讨论】:

      猜你喜欢
      • 2018-08-04
      • 2021-06-05
      • 1970-01-01
      • 2017-07-25
      • 1970-01-01
      • 2014-06-04
      • 2018-12-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多