ホームページ >バックエンド開発 >Python チュートリアル >NumPy 配列を特定の列でソートするにはどうすればよいですか?

NumPy 配列を特定の列でソートするにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-04 17:54:11652ブラウズ

How to Sort a NumPy Array by a Specific Column?

特定の列に基づいた NumPy 配列の並べ替え

このクエリは、指定された n 番目の列に従って NumPy 配列を並べ替える必要性に対処します。説明のために、配列 'a' を使ってみましょう:

import numpy as np
a = np.array([[9, 2, 3],
           [4, 5, 6],
           [7, 0, 5]])

私たちの目標は、行列 'a' の行を 2 番目の列に基づいて並べ替えることで、結果は次のようになります。

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

これを実現するには、インデックスに基づいて NumPy 配列をスライスし、argsort 関数を活用する機能を利用できます。以下のコードは解決策を示しています:

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

このコードの詳細:

  1. a[:, 1]: これは ' の 2 番目の列を選択します。 a'.
  2. .argsort(): これにより、 2 番目の列の要素の並べ替え順序を表すインデックスの配列。
  3. a[a[:, 1].argsort()]: これは 'a' の行を並べ替えます。ソートされたインデックスに従って、望ましい結果が得られます。

以上がNumPy 配列を特定の列でソートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。