アルゴリズムを使った NumPy 配列のソート

NumPyNumPyBeginner
今すぐ練習

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

ソートとは、配列の要素を与えられた基準に基づいて順序付けられたシーケンスに並べるプロセスです。NumPy ライブラリには、クイックソート、ヒープソート、マージソートなど、さまざまなソートアルゴリズムに基づいたソート操作を行う関数が用意されています。この実験では、NumPy の ndarray をさまざまなソートアルゴリズムを使ってソートする方法を学びます。

VM のヒント

VM の起動が完了したら、左上隅をクリックして ノートブック タブに切り替えて、Jupyter Notebook を使って練習しましょう。

Jupyter Notebook の読み込みには数秒かかる場合があります。Jupyter Notebook の制限により、操作の検証は自動化できません。

学習中に問題があった場合は、Labby にお問い合わせください。セッション終了後にフィードバックを提供してください。すぐに問題を解決いたします。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL numpy(("NumPy")) -.-> numpy/ArrayBasicsGroup(["Array Basics"]) numpy(("NumPy")) -.-> numpy/ArrayManipulationGroup(["Array Manipulation"]) numpy(("NumPy")) -.-> numpy/AdvancedFeaturesGroup(["Advanced Features"]) numpy(("NumPy")) -.-> numpy/SpecialTechniquesGroup(["Special Techniques"]) numpy/ArrayBasicsGroup -.-> numpy/multi_array("Multi-dimensional Array Creation") numpy/ArrayManipulationGroup -.-> numpy/reshape("Reshape") numpy/AdvancedFeaturesGroup -.-> numpy/sort_search("Sort and Search") numpy/SpecialTechniquesGroup -.-> numpy/struct_array("Structured Arrays") subgraph Lab Skills numpy/multi_array -.-> lab-86500{{"アルゴリズムを使った NumPy 配列のソート"}} numpy/reshape -.-> lab-86500{{"アルゴリズムを使った NumPy 配列のソート"}} numpy/sort_search -.-> lab-86500{{"アルゴリズムを使った NumPy 配列のソート"}} numpy/struct_array -.-> lab-86500{{"アルゴリズムを使った NumPy 配列のソート"}} end

NumPy ライブラリをインポートする

このステップでは、ソート操作を行うために必要な NumPy ライブラリをインポートします。

import numpy as np

特定の軸に沿ってソートする

このステップでは、特定の軸に基づいて配列の要素をソートします。配列をソートするには、NumPy の sort() 関数を使用します。

a = np.array([[17, 15], [10, 25]])
arr1 = np.sort(a, axis = 0)
print("Sorting Along first axis : \n")
print(arr1)

最後の軸に沿ってソートする

このステップでは、最後の軸に基づいて配列をソートします。

b = np.array([[1, 15], [20, 18]])
arr2 = np.sort(b, axis = -1)
print("\nSorting along last axis : \n")
print(arr2)

どの軸も指定せずにソートする

このステップでは、どの軸も指定せずに配列の要素をソートします。この場合、ソートする前に配列を一次元に変換します。

c = np.array([[12, 15], [10, 1]])
arr3 = np.sort(c, axis = None)
print("\nSorting Along none axis : \n")
print(arr3)

フィールドを使って配列をソートする

このステップでは、フィールドを使って配列をソートします。

d = np.dtype([('name', 'S10'),('marks',int)])
arr = np.array([('Mukesh',200),('John',251)],dtype = d)
print("Sorting data ordered by name")
print(np.sort(arr,order = 'name'))

まとめ

この実験では、NumPy ライブラリのソートについて学びました。また、numpy.sort() 関数とその構文、パラメータ、および返り値についても学びました。numpy.sort() 関数のさまざまなパラメータを使用することで、配列の要素をさまざまな軸とフィールドに沿ってソートしました。