【问题标题】:Returning max value in one column based on changing condition in another column根据另一列中的变化条件返回一列中的最大值
【发布时间】:2023-01-10 10:37:39
【问题描述】:

我有一个看起来像这样的数据集:

|        | season   |  stormid |  vmax |
 
|0       |  1970    | SH071970 |   1 |
|1       |  1970    | SH071971 |   6 |
|2       |  1970    | SH071970 |   3 |
|3       |  1970    | SH071971 |   9 |

我想为每个可以作为附加列添加到另一个数据帧的唯一 stormid 返回 vmax 的最大值。

到目前为止我已经尝试过

df['vmax'] = df['stormid']['vmax'].max()

没有运气。

是否可以编写一个 for 循环来遍历 stormid(我已将其存储在另一个数据框中)并从 vmax 列返回最大值?

【问题讨论】:

    标签: python conditional-statements max multiple-columns


    【解决方案1】:

    使用groupby。 示例代码在这里。

    df.groupby('stromid')['vmax'].max()
    

    根据stromid返回索引为stormid,值为vmax最大值的pandas Series

    【讨论】:

      猜你喜欢
      • 2021-10-16
      • 1970-01-01
      • 2021-04-23
      • 1970-01-01
      • 2022-09-30
      • 2020-12-03
      • 1970-01-01
      • 2014-02-04
      • 1970-01-01
      相关资源
      最近更新 更多