當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python pandas.DataFrame.sort_index用法及代碼示例


用法:

DataFrame.sort_index(axis=0, level=None, ascending=True, inplace=False, kind='quicksort', na_position='last', sort_remaining=True, ignore_index=False, key=None)

按標簽(沿軸)對對象進行排序。

如果 inplace 參數為 False ,則返回按標簽排序的新 DataFrame,否則更新原始 DataFrame 並返回 None。

參數

axis{0 或 ‘index’,1 或 ‘columns’},默認 0

要排序的軸。值 0 標識行,1 標識列。

level整數或級別名稱或整數列表或級別名稱列表

如果不是無,則對指定索引級別的值進行排序。

ascendingbool 或 list-like of bools,默認 True

升序與降序排序。當索引是 MultiIndex 時,可以單獨控製每個級別的排序方向。

inplace布爾值,默認為 False

如果為 True,則就地執行操作。

kind{‘quicksort’, ‘mergesort’, ‘heapsort’, ‘stable’},默認 ‘quicksort’

排序算法的選擇。另請參閱numpy.sort() 了解更多信息。 mergesortstable 是唯一穩定的算法。對於 DataFrame,此選項僅在對單個列或標簽進行排序時應用。

na_position{‘first’, ‘last’},默認 ‘last’

如果 first 則將 NaN 放在開頭; last 將 NaN 放在最後。未針對 MultiIndex 實施。

sort_remaining布爾值,默認為真

如果 True 並且按級別和索引排序是多級的,則在按指定級別排序後也按其他級別排序(按順序)。

ignore_index布爾值,默認為 False

如果為 True,則生成的軸將標記為 0、1、...、n - 1。

key可調用的,可選的

如果不是 None,則在排序之前將 key 函數應用於索引值。這類似於key內置參數sorted()函數,顯著的區別在於key函數應該向量化。它應該期待一個Index並返回一個Index相同的形狀。對於 MultiIndex 輸入,應用鍵每級.

返回

DataFrame 或無

按標簽排序的原始 DataFrame 或 None 如果 inplace=True

例子

>>> df = pd.DataFrame([1, 2, 3, 4, 5], index=[100, 29, 234, 1, 150],
...                   columns=['A'])
>>> df.sort_index()
     A
1    4
29   2
100  1
150  5
234  3

默認升序排序,降序排序,使用ascending=False

>>> df.sort_index(ascending=False)
     A
234  3
150  5
100  1
29   2
1    4

可以指定一個鍵函數,該函數在排序之前應用於索引。對於MultiIndex,這將分別應用於每個級別。

>>> df = pd.DataFrame({"a":[1, 2, 3, 4]}, index=['A', 'b', 'C', 'd'])
>>> df.sort_index(key=lambda x:x.str.lower())
   a
A  1
b  2
C  3
d  4

相關用法


注:本文由純淨天空篩選整理自pandas.pydata.org大神的英文原創作品 pandas.DataFrame.sort_index。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。