Python NumPy numpy.sort() 関数
Minahil Noor
2023年1月30日
-
numpy.sort()
の構文 -
コード例:
numpy.sort()
-
コード例:
numpy.sort()
で多次元配列をソートする -
コード例:
numpy.sort()
で多次元配列を指定した軸に沿ってソートする -
コード例:
numpy.sort()
で異なる型の配列をソートする
Python NumPy numpy.sort()
関数は任意のデータ型の N 次元の配列をソートします。この関数はデフォルトでは昇順に配列をソートします。
numpy.sort()
の構文
numpy.sort(a, axis=-1, kind=None, order=None)
パラメータ
a |
配列のような構造体です。これはソートするための入力配列です。 |
axis |
整数です。この関数が配列をソートする軸を表します。デフォルト値は -1 で、この関数は配列を最後の軸に沿って、つまり昇順にソートします。これが None の場合、この関数は多次元配列を 1 次元に変換してからソートします。これが 0 の場合、この関数は配列を最初の軸に沿って、つまり降順にソートします。 |
kind |
文字列です。これはソートアルゴリズムの名前を表します。この関数が受け付けるソートアルゴリズム名は quicksort 、mergesort 、heapsort 、stable です。これらのソートアルゴリズムの時間的な複雑さについては、こちらをクリックしてください。 |
order |
文字列または文字列のリストです。配列のフィールドが定義されている場合、このパラメータを用いて最初に比較するフィールドを指定します。 |
戻り値
入力配列と同じ型と形状のソートされた配列を返します。
コード例:numpy.sort()
パラメータ a
は必須です。この関数を 1 次元配列で実行すると、以下のような出力が得られます。
import numpy as np
a = np.array(
[89, 34, 56, 87, 90, 23, 45, 12, 65, 78, 9, 34, 12, 11, 2, 65, 78, 82, 28, 78]
)
sorted_array = np.sort(a)
print("The sorted array is:")
print(sorted_array)
出力:
The sorted array is:
[2 9 11 12 12 23 28 34 34 45 56 65 65 78 78 78 82 87 89 90]
昇順にソートされた配列を返しました。
コード例:numpy.sort()
で多次元配列をソートする
これから多次元配列を渡します。
import numpy as np
a = np.array([[11, 12, 5], [15, 6, 10], [10, 8, 12], [12, 15, 8], [34, 78, 90]])
sorted_array = np.sort(a)
print("The sorted array is:")
print(sorted_array)
出力:
The sorted array is:
[[ 5 11 12]
[ 6 10 15]
[ 8 10 12]
[ 8 12 15]
[34 78 90]]
この関数は配列を昇順、つまり axis= -1
のデフォルト値として最後の軸に沿ってソートします。
コード例:numpy.sort()
で多次元配列を指定した軸に沿ってソートする
パラメータ axis
の値を None
に設定します。
import numpy as np
a = np.array([[11, 12, 5], [15, 6, 10], [10, 8, 12], [12, 15, 8], [34, 78, 90]])
sorted_array = np.sort(a, axis=None)
print("The sorted array is:")
print(sorted_array)
出力:
The sorted array is:
[5 6 8 8 10 10 11 12 12 12 15 15 34 78 90]
この関数は、まず配列を 1 次元配列に変換してからソートしていることに注意してください。
次に、最初の軸に沿って配列を並べ替えます。
import numpy as np
a = np.array([[11, 12, 5], [15, 6, 10], [10, 8, 12], [12, 15, 8]])
sorted_array = np.sort(a, axis=0)
print("The sorted array is:")
print(sorted_array)
出力:
The sorted array is:
[[10 6 5]
[11 8 8]
[12 12 10]
[15 15 12]]
この関数は配列を最初の軸に沿って、つまり降順にソートしています。
コード例:numpy.sort()
で異なる型の配列をソートする
この関数を使用して、文字列の配列やブール値の配列など、異なるデータ型の配列をソートすることができます。
import numpy as np
a = np.array([["z", "x"], ["b", "a"], ["g", "l"], ["k", "d"]])
sorted_array = np.sort(a)
print("The sorted array is:")
print(sorted_array)
出力:
The sorted array is:
[['x' 'z']
['a' 'b']
['g' 'l']
['d' 'k']]
アルファベット順に配列をソートしていることに注意してください。次に、ブール値の配列を渡します。
import numpy as np
a = np.array([[True, False, True], [False, False, True], [False, True, True]])
sorted_array = np.sort(a)
print("The sorted array is:")
print(sorted_array)
出力:
The sorted array is:
[[False True True]
[False False True]
[False True True]]