我在熊貓中有這些資料,如何根據價格將“地址”轉換為數字?
Area Room Parking Address Price
0 63 1 1 Shahran 1850000000
1 60 1 1 Chids 1850000000
2 79 2 1 Pardis 550000000
3 95 2 1 Shahrake 902500000
4 123 2 1 Shahrake 7000000000
uj5u.com熱心網友回復:
IIUC,您可以rank按每組地址的平均價格計算價格:
df['rank'] = df.groupby('Address')['Price'].transform('mean').rank()
輸出:
Area Room Parking Address Price rank
0 63 1 1 Shahran 1850000000 2.5
1 60 1 1 Chids 1850000000 2.5
2 79 2 1 Pardis 550000000 1.0
3 95 2 1 Shahrake 902500000 4.5
4 123 2 1 Shahrake 7000000000 4.5
或者,如果您更喜歡組之間的密集值:
df['rank'] = df.groupby('Address')['Price'].transform('mean').rank(method='dense')
輸出:
Area Room Parking Address Price rank
0 63 1 1 Shahran 1850000000 2
1 60 1 1 Chids 1850000000 2
2 79 2 1 Pardis 550000000 1
3 95 2 1 Shahrake 902500000 3
4 123 2 1 Shahrake 7000000000 3
注意。使用ascending=False引數將最高價格排在第一位
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/333435.html
