python - 我想为 pd.groupby.max() 函数返回的值返回原始 df 索引
问题描述
下面的代码将创建一个包含每天最大温度的表。我想做的是返回所有这些最大温度值的索引,以便我可以应用于原始 df
df = pd.DataFrame('date':list1,'max_temp':list2)
grouped = df.groupby(by=date,as_index=False).max()
解决方案
"index"
您可以在对数据框进行排序之前定义另一个称为的列:
import pandas as pd
list1 = [7, 9, 3, 4]
list2 = [8, 6, 8, 9]
df = pd.DataFrame({'date': list1, 'max_temp': list2})
df['index'] = df.index
grouped = df.groupby(by="date", as_index=False).max()
print(grouped)
输出:
date max_temp index
0 3 8 2
1 4 9 3
2 7 8 0
3 9 6 1
现在,使用df.query
,我们可以通过索引获得一个"date"
值:"column"
print(grouped.query("index==0")["date"])
输出:
2 7
Name: date, dtype: int64
推荐阅读
- file - Talend - 将动态模式与 CSV 文件一起使用时出现问题
- java - Java中的事件订阅模式
- webview - iOS webview 中的低延迟视频流有哪些选项?
- amazon-s3 - 如何在亚马逊 s3 中直接使用 cffile 上传?
- puppet - 解压特定目录中的文件
- python - 我无法设置 PNG 图像的像素数据
- c++ - 使用具有先前默认成员初始化变量的默认成员初始化程序是否合法?
- python - Kivy TextInput 自动完成。如何使用 kv 文件获得相同的结果?
- html - Firefox:`transform: translate (%)` 加上 `filter: drop-shadow` 使文本模糊
- jquery - 以逗号分隔检索父子检查值