【发布时间】:2020-03-11 16:07:11
【问题描述】:
我有一个数据框,在对其进行分组时,我得到了以下结果集。
Name | Score | Salary A | SALARY B
ABC | 20 | 300 | 500
XYZ | 30 | 400 | 600
PQR | 40 | 300 | 500
TFW | 50 | 0 | 0
OIP | 60 | 0 | 0
QWE | 50 | None | None
UYT | 40 | None | None
我需要比较salaryA 和salaryB 的值(salaryA 与salaryA 和salaryB 与salaryB)。如果 Salary 相同,那么我想对分数求和,否则我必须取分数的 MAX。
预期输出
Name | Score
ABC, PQR | 60
XYZ | 30
TFW | 50
OIP | 60
QWE | 50
UYT | 40
【问题讨论】:
-
你的预期输出是什么?
-
@Dan 添加了预期输出
-
我不太明白逻辑,如果两个
Names 的Salary A相同但Salary B不同会发生什么?你想要max吗?例如如果PQR,Salary B是 400 -
@Dan 是的。在那种情况下是最大值。
-
max 在这里扮演什么角色?如果组中的值不匹配,则组的总和自动返回最大值.. ?
标签: python python-3.x pandas dataframe pandas-groupby