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

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

DDD
發布: 2024-11-28 21:27:18
原創
821 人瀏覽過

How to Sort a NumPy Array's Rows by a Specific Column?

在 NumPy 中按列對數組進行排序

按列對數組進行排序是資料分析和操作中的常見任務。 NumPy 提供了執行此操作的有效方法。

問題:

給定一個具有多列的 NumPy 數組,如何以特定的順序對其行進行排序列?

範例:

考慮以下數組a:

a = np.array([[9, 2, 3],
              [4, 5, 6],
              [7, 0, 5]])
登入後複製

我們想要按第二列對a 的行進行排序(第1列,索引從0)可取得:

array([[7, 0, 5],
       [9, 2, 3],
       [4, 5, 6]])
登入後複製

答案:

要以第二列對a 排序,請使用以下程式碼:

a[a[:, 1].argsort()]
登入後複製

此表達式實現所需的結果,因為:

  1. a[:, 1]選擇第二列
  2. argsort() 傳回以升序對列進行排序的索引。
  3. 使用這些索引對 a 建立索引會相應地對 a 的行進行排序。

因此,這種方法提供了一種方便有效的方法來按任何指定列對 NumPy 數組進行排序。

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

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板