我想返回一列的最大值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我想返回一列的最大值相关的知识,希望对你有一定的参考价值。

我有3列,分别包含风速和风向以及时间索引。我想返回每日最大风随时间和该时间的特定风向。我使用下面的命令:

df['max_day']=df.wind.resample('1D').max()

但是他总是在00:00回来给我

答案

我同意NYC Coder的评论,即您应该共享数据样本。然后,我们可以看到,例如,同一天有多个最大读数的可能性有多大(如果读数是整数值,就不太可能;如果读数是浮点数,则不太可能)。

一般的工作流程如下:

  1. 计算每天的最大读数。假设datetime列包含时间戳记,然后按照Marat的建议进行一些补充:

max_speed = df.groupby(df.datetime.dt.date).max().reset_index()

  1. 重置索引允许您将新的数据框与现有的数据框合并(您可能需要将列重命名为“ date”和“ max_speed”以执行以下行:]]]
  2. df["date"] = df.datetime.dt.date df = df.merge(max_speed, on="date")

  1. 最后,保留所有包含每个日期最大值的行。请注意,每个日期可能有多个最大值。
  2. df = df[df["wind"] == df["max_speed"]]

如果您可以编辑答案以提供数据示例,则可以更精确地编辑答案,也可以通过运行Python检查以确保答案可以正常工作。

以上是关于我想返回一列的最大值的主要内容,如果未能解决你的问题,请参考以下文章

从另一列 SQL 返回正在运行的最大列

调整相对于 2 列的选择以在一列中返回最大值以用于另一列中的重复条目

Mysql,如何使用另一列的最大值对一组行进行分组?

Day-7:汇总数据

如何获得每列的最大值?

根据由另一列分组的不同列的最大值获取值[重复]