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

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

DDD
DDDオリジナル
2024-12-25 08:56:09767ブラウズ

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

列による NumPy 配列の並べ替え

特定の列による NumPy 配列の並べ替えは、多くの場合、データ操作に必要な操作です。たとえば、配列

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

について考えてみましょう。2 番目の列の値に基づいて a の行を並べ替えたいとします。これを実現するには、NumPy の argsort() 関数を利用します。

a[:, 1].argsort()

上記の式は、argsort() を a の 2 番目の列に適用し、並べ替えられた値に対応するインデックスの配列を生成します。具体的には、次のものが返されます。

array([1, 0, 2])

これらのインデックスは、2 番目の列で昇順に並べ替えるために a の行を並べ替える順序を表します。これを配列のインデックス付けと組み合わせると、ソートされた配列を取得できます:

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

この式は次の結果を返します:

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

ご希望どおり、 a の行は 2 番目の列に従ってソートされています。 .

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

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