我有這兩個資料框
Name Last_Name Age
0 Alan Lopez 18
1 Ana Lopez 15
2 Juan Lopez 13
3 Cristina Hernandez 16
4 Lalo Hernandez 15
5 Ana Martinez 14
6 Alberto Martinez 20
7 Alberto Martinez 19
第二個:
Last_Name
0 Lopez
1 Hernandez
2 Martinez
我想創建第三個資料框,我可以在其中找到最大值并保留最小值
Last_Name Range
0 Lopez 5
1 Hernandez 1
2 Martinez 6
我嘗試的是df3=np.where(df1['Last_Name'].eq(df2['Last_Name']), df1['Age'].max() - df1['Age'].min(),df2['Range'])但給了我一個關于不支持的運算元的錯誤 - 'method' 和 'method'
uj5u.com熱心網友回復:
你可以檢查numpy ptp與groupby
out = df1.groupby('Last_Name')['Age'].agg(np.ptp).reindex(df2['Last_Name'])
uj5u.com熱心網友回復:
IIUC,你想要groupby:
>>> df1.groupby("Last_Name")["Age"].max() - df1.groupby("Last_Name")["Age"].min()
Last_Name
Hernandez 1
Lopez 5
Martinez 6
Name: Age, dtype: int64
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/426282.html
下一篇:3x4矩陣的點積
