NumPyのunique
関数は、配列から重複要素を削除してユニークな要素だけで構成される配列を返します。この関数はPythonのset()
に相当するもので、以下のような形式で使用します。
numpy.unique(arr, return_index=False, return_inverse=False, return_counts=False, axis=None)
ここで、各パラメータの意味は以下の通りです。
arr
: 入力配列。axis
が指定されていない場合、この配列はフラット化されます。return_index
: Trueの場合、ユニークな配列を生成するための入力配列のインデックスも返します。return_inverse
: Trueの場合、元の配列を再構築するためのユニークな配列のインデックスも返します。return_counts
: Trueの場合、各ユニークな要素が元の配列に何回現れるかも返します。axis
: 操作を行う軸。Noneの場合、arr
はフラット化されます。
例えば、以下のように使用することができます。
import numpy as np
# 1次元配列の場合
arr = np.array([1, 1, 2, 2, 3, 3])
print(np.unique(arr)) # 出力: array([1, 2, 3])
# 2次元配列の場合
arr = np.array([[1, 0, 0], [1, 0, 0], [2, 3, 4]])
print(np.unique(arr, axis=0)) # 出力: array([[1, 0, 0], [2, 3, 4]])
このように、NumPyのunique
関数は、配列からユニークな要素を取り出す際に非常に便利なツールです。