当前位置: 首页 > 知识库问答 >
问题:

如何找出每个城市中哪个canidate[男性或女性]得分最高?[重复]

朱炜
2023-03-14

我有这个数据框架,我想知道谁在每个城市获得了最高分。

import pandas as pd 

df = pd.DataFrame({"City":["Delhi","Delhi","Mumbai","Mumbai","Lahore","Lahore"],
"Points":[90.1,90.3,94.1,95,89,90.5],
"Gender":["Male","Female","Female","Male","Female","Male"]})

到目前为止,我已经尝试过了,但这给了我每个城市的男性和女性的顶尖人物,

df.groupby(by=["City","Gender"],sort=False)["Points"].max()

我想要一个在每个城市得分最高的候选人[男性或女性]。

共有2个答案

胡元明
2023-03-14

这个只会给你一个最高分的表格

import pandas as pd 

df = pd.DataFrame({
    "City":["Delhi","Delhi","Mumbai","Mumbai","Lahore","Lahore"],
    "Points":[90.1,90.3,94.1,95,89,90.5],
    "Gender":["Male","Female","Female","Male","Female","Male"]
})

df.groupby('City').apply(lambda x: x.sort_values('Points').tail(1)).reset_index(drop=True)

输出:

     City  Points  Gender
0   Delhi    90.3  Female
1  Lahore    90.5    Male
2  Mumbai    95.0    Male
郑燕七
2023-03-14

尝试使用仅“City”作为索引的数据透视表:

df.pivot_table(values='Points',index=['City'],aggfunc='max')

#输出

        Points
City          
Delhi     90.3
Lahore    90.5
Mumbai    95.0

如果你想使用groupby,请随意使用,但请记住,这里只使用“城市”,性别并不重要

df.groupby(by=["City"],sort=False)["Points"].max()
#Output
City
Delhi     90.3
Mumbai    95.0
Lahore    90.5
Name: Points, dtype: float64

如果你也想看性别,用这个:

df.groupby('City').apply(lambda x: x.sort_values('Points').iloc[-1].reset_index(drop=True))

输出

    0   1   2
City            
Delhi   Delhi   90.3    Female
Lahore  Lahore  90.5    Male
Mumbai  Mumbai  95.0    Male
 类似资料:
  • 我有两个单选按钮,可以选择男性或女性。我的要求是,如果我点击单选按钮,我必须向服务器发送数字,如果我点击单选按钮,我必须向服务器发送数字(在服务器端,他们用这个数字进行检查。也就是说,如果他们收到1,那么它是男性,如果他们收到“2”,那么它是女性)。所以这里我必须检查我是否得到,如果响应是。我该怎么做?

  • 本文向大家介绍写SQL:找出每个城市的最新一条记录。相关面试题,主要包含被问及写SQL:找出每个城市的最新一条记录。时的应答技巧和注意事项,需要的朋友参考一下 考察点:sql语句   id 城市 人口 信息 创建时间 1 北京 100 info1 时间戳 2 北京 100 info2 时间戳 3 上海 100 info3 时间戳 4 上海 100 info4 时间戳  

  • 问题内容: 我有下表 在这里,我有一个“学生”表,我想 从该学生表中获取从每个学科获得满分的学生的姓名,例如以下输出。 问题答案: 您可以使用ROW_NUMBER函数仅返回每个主题的“最佳”行: SQL小提琴 MS SQL Server 2008架构设置 : 查询1 : 结果 :

  • 本文向大家介绍在一个重男轻女的国家里,每家每户都想生男孩。若一户人家生了一个女孩,便会再生一个,直到生下的是男孩为止。请问这个国家的男女比例是多少?相关面试题,主要包含被问及在一个重男轻女的国家里,每家每户都想生男孩。若一户人家生了一个女孩,便会再生一个,直到生下的是男孩为止。请问这个国家的男女比例是多少?时的应答技巧和注意事项,需要的朋友参考一下 每个孩子出生男女概率是50%,所以每次出生的男女

  • 我在Python工作。我对分类变量“城市”有一个问题。 我正在一个超过一百万行的大数据集上建立一个预测模型。我有100多种功能。其中之一是“城市”,由33000个不同的城市组成。 我使用例如XGBoost,其中我需要将分类变量转换为数字。Dummifying会导致功能的数量大幅增加。XGBoost(和我的20 gb RAM)无法处理此问题。 有没有其他方法来处理这个变量,除了例如。一个热编码,假人

  • 本文向大家介绍你来回答一下这个问题,在一个重男轻女的国家里,每家每户都想生男孩。若一户人家生了一个女孩,便会再生一个,直到生下的是男孩为止。请问这个国家的男女比例是多少?相关面试题,主要包含被问及你来回答一下这个问题,在一个重男轻女的国家里,每家每户都想生男孩。若一户人家生了一个女孩,便会再生一个,直到生下的是男孩为止。请问这个国家的男女比例是多少?时的应答技巧和注意事项,需要的朋友参考一下 1: