[英]Compare two values in pandas dataframe and if they are equal add it
我有一個數據框,在對其進行分組時,我得到以下結果集。
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)。 如果薪水相同,那么我想對分數求和,否則我必須取分數的 MAX。
預期輸出
Name | Score
ABC, PQR | 60
XYZ | 30
TFW | 50
OIP | 60
QWE | 50
UYT | 40
我是這樣做的:
a = pd.read_csv('yourdata.dat',sep='|')
a['total'] = a.iloc[:,2] + a.iloc[:,3]
a.groupby('total').agg({'Name ':','.join,' Score ':'sum'}).reset_index()[['Name ',' Score ']]
Name Score
0 ABC ,PQR 60
1 XYZ 30
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.