Pandas 中的多列排序
基於多列對 Pandas DataFrame 進行排序是一項常見任務。本文介紹如何使用 sort() 方法執行多列排序,該方法在最新版本的 Pandas 中已被棄用,取而代之的是 sort_values()。
sort_values() 方法:
從 Pandas 0.17.0 開始,建議對多列使用 sort_values() 方法排序。其語法為:
df.sort_values(by=['column_1', 'column_2'], ascending=[True, False])
其中:
對於例如:
要按「b」列升序和「c」列降序對DataFrame df 進行排序,您可以使用:
df = df.sort_values(['b', 'c'], ascending=[True, False])
sort ()方法(已棄用):
適用於先前的Pandas 版本0.20.0 中,您仍然可以使用帶有升序參數的sort() 方法:
df.sort(['a', 'b'], ascending=[True, False])
但是,需要注意的是,預設情況下,sort() 方法不是就位的。因此,您應該將排序操作的結果指派給新的 DataFrame 或使用 inplace=True 將原始 DataFrame 替換為排序後的版本:
df1 = df1.sort(['a', 'b'], ascending=[True, False])
或
df1.sort(['a', 'b'], ascending=[True, False], inplace=True)
以上是如何按多列對 Pandas DataFrame 進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!