python - 获取具有最大特定值的整行,Pandas
问题描述
neighbourhood room_type value
Agios Loukas Entire home/apt 69
Private room 11
Shared room 1
Agios Nikolaos Entire home/apt 193
Private room 33
Akadimia Platonos Entire home/apt 45
Private room 10
Shared room 1
以最大值取整行的最佳方法是什么。例如我想采取
Agios Loukas Entire home/apt 69
Agios Nikolaos Entire home/apt 193
Akadimia Platonos Entire home/apt 45
谢谢你,对不起我的英语
解决方案
我相信你需要;
第一级的 groupbyidxmax
和df.loc[]
out = df.loc[df.groupby(level=0)['value'].idxmax()]
print(out)
value
neighbourhood room_type
Agios Loukas Entire home/apt 69
Agios Nikolaos Entire home/apt 193
Akadimia Platonos Entire home/apt 45
或者:
groupby+transform
使用 max 然后等于运算符来比较和选择行
out1 = df[df['value'].eq(df.groupby('neighbourhood')['value'].transform('max'))]
print(out1)
value
neighbourhood room_type
Agios Loukas Entire home/apt 69
Agios Nikolaos Entire home/apt 193
Akadimia Platonos Entire home/apt 45
推荐阅读
- oracle - 具有 oracle db 的 JPQL 查询
- css - 图像存储卡游戏无响应
- if-statement - awk:从 CSV 到 PDB(蛋白质数据库)
- debugging - 在 CMake 中调整 Visual Studio 2017 调试器设置
- sql-server - coalesce 将非 unicode 字符转换为问号
- python - 如果找到某些特定单词,则删除特定行
- r - 相同刻度/标签的几种颜色
- maven - Maven下载surefire插件3.0.0-M2尽管没有在pom中指定
- eloquent - Laravel nestedwhere 解析错误:语法错误,意外'}'
- apache-kafka - Kafka 消费者不是仅从 4 个分区中的一个分区中读取数据