如果 Series 已排序,我想要一個函式,它可以為我提供 pandas Series 物件中元素的索引。我做了以下實作:
def series_ordering(series):
positions = series.reset_index(drop=True, inplace=False).sort_values().index
return pd.Series(positions, index=series.index)
但感覺有點基本。例如,計算分位數需要這樣的東西。所以我希望有一種更簡單的方法來實作這一點,成為圖書館的一部分。在 Pandas 中可以輕松獲得類似的東西嗎?
uj5u.com熱心網友回復:
用于argsort獲取排序順序:
例子:
pd.Series([2,3,1,4,0]).argsort()
輸出:
0 4
1 2
2 0
3 1
4 3
dtype: int64
或者rank,如果您更想要排名:
pd.Series([2,3,1,4,0]).rank(method='dense').sub(1).convert_dtypes()
輸出:
0 2
1 3
2 1
3 4
4 0
dtype: Int64
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/482221.html
