gpt4 book ai didi

python - 为另一列中的每个值找到一列中的最低值 - Pandas

转载 作者:行者123 更新时间:2023-12-01 23:04:34 25 4
gpt4 key购买 nike

我正在为数据框使用 pandas 库。在下面的数据中,对于每个团队,每年(2020 年、2019 年、2018 年)的每个月(1 - 6)都有分数。

month  team  points2020  points2019  points2018
1 team1 50 10 5
2 team1 20 40 2
3 team1 12 14 17
4 team1 8 9 3
5 team1 2 3 1
6 team1 30 18 60
1 team2 8 9 10
2 team2 40 70 30
3 team2 25 19 34
4 team2 88 70 1
5 team2 23 45 5
6 team2 55 77 90

我要显示的是每个月,只显​​示每年得分最低的团队

因此,例如,根据上述数据,对于“points2020”的月份“1”,我只想返回“team”列中的 team2,因为 team2 的“points2020”得分最低。

对于 points2019 的“1”月,我只想返回团队列中的 team2,因为 team2 的“points2019”积分最低,依此类推。

我将如何实现这一目标?

所需输出示例:

month  year  team   points
1 2020 team2 8
2 2020 team1 20
3 2020 team1 12
4 2020 team1 8
5 2020 team1 2
6 2020 team1 30
1 2019 team2 9
2 2019 team1 40
3 2019 team1 14
4 2019 team1 9
5 2019 team1 3
6 2019 team1 18

最佳答案

team 列定义为索引并按 month 分组,然后使用 idxmin 提取得分最低的团队(索引):

out = df.set_index('team').groupby('month', as_index=False).idxmin()
print(out)

# Output
month points2020 points2019 points2018
0 1 team2 team2 team1
1 2 team1 team1 team1
2 3 team1 team1 team1
3 4 team1 team1 team2
4 5 team1 team1 team1
5 6 team1 team1 team1

关于python - 为另一列中的每个值找到一列中的最低值 - Pandas,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71189282/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com