首頁 >後端開發 >Python教學 >如何按特定列對 NumPy 陣列進行排序?

如何按特定列對 NumPy 陣列進行排序?

DDD
DDD原創
2024-12-25 08:56:09802瀏覽

How Can I Sort a NumPy Array by a Specific Column?

按列對 NumPy 數組進行排序

按特定列對 NumPy 數組進行排序通常是資料操作的必要操作。例如,考慮陣列:

a = array([[9, 2, 3],
           [4, 5, 6],
           [7, 0, 5]])

假設我們要根據第二列中的值對 a 的行重新排序。為了實現這一點,我們可以利用 NumPy 中的 argsort() 函數。

a[:, 1].argsort()

上面的表達式將 argsort() 套用於 a 的第二列,產生與排序值相對應的索引陣列。具體來說,它會傳回:

array([1, 0, 2])

這些索引表示 a 的行應重新排序以按第二列升序排序的順序。結合數組索引,我們可以得到排序後的數組:

a[a[:, 1].argsort()]

該表達式返回:

array([[7, 0, 5],
       [9, 2, 3],
       [4, 5, 6]])

根據需要,a 的行已根據第二列排序.

以上是如何按特定列對 NumPy 陣列進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn