我有兩個資料框,df1 和 df2,如下所示。我正在嘗試創建一個新的資料框,該資料框將顯示每個學生跨學科的最高分。例如,在新資料框中,George 的 match_score 將為 63(這是 df1 和 df2 中的最大 match_score)。
有沒有辦法做到這一點?任何意見和建議將不勝感激。
import pandas as pd
df1 = { 'student':['George','Andrea','micheal','Ann',
'maggie','Ravi','Xien','Jalpa'],
'match_score':[63,42,56,70,38,78,84,99],
'ela_score':[43,74,41,82,69,46,70,98]}
df2 = { 'student':['George','Andrea','micheal', 'Matt',
'maggie','Ravi','Xien','Jalpa'],
'match_score':[62,47,55,74,32,77,86,77],
'ela_score':[45,78,44,89,66,49,72,73]}
df1=pd.DataFrame(df1)
df2=pd.DataFrame(df2)
uj5u.com熱心網友回復:
pd.concat與 一起使用Groupby.max:
In [1293]: df = pd.concat([df1, df2]).groupby(level=0).max()
In [1294]: df
Out[1294]:
student match_score ela_score
0 George 63 45
1 Andrea 47 78
2 micheal 56 44
3 Matt 74 89
4 maggie 38 69
5 Ravi 78 49
6 Xien 86 72
7 Jalpa 99 98
uj5u.com熱心網友回復:
data=pd.concat([df1, df2])
data.match_score.max()
99
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/424755.html
