numpy.unique()の例



Numpy Unique Example



numpy.unique(ar、return_index = False、return_inverse = False、return_counts = False、axis = None) [ソース]

配列の一意の要素を見つけます。

配列のソートされた一意の要素を返します。固有の要素に加えて、3つのオプションの出力があります。



  • 一意の値を与える入力配列のインデックス
  • 入力配列を再構築する一意の配列のインデックス
  • 各一意の値が入力配列に現れる回数
パラメーター
ararray_like

入力配列。そうでもなければ軸が指定されていますが、まだ1-Dでない場合、これは平坦化されます。

return_indexbool、オプション

Trueの場合、のインデックスも返しますar(指定された軸に沿って、または提供されている場合はフラット化された配列内)で、一意の配列になります。



return_inversebool、オプション

Trueの場合、再構築に使用できる一意の配列のインデックス(指定されている場合は指定された軸)も返します。と。

return_countsbool、オプション

Trueの場合、各一意のアイテムが表示される回数も返しますと。

バージョン1.9.0の新機能。



axisintまたはNone、オプション

操作する軸。なしの場合、arは平坦化されます。整数の場合、指定された軸によってインデックス付けされたサブ配列はフラット化され、指定された軸の次元を持つ1次元配列の要素として扱われます。詳細については、注を参照してください。オブジェクト配列またはオブジェクトを含む構造化配列は、次の場合はサポートされません。axiskwargが使用されます。デフォルトはNoneです。

バージョン1.13.0の新機能。

戻り値
uniquendarray

ソートされた一意の値。

unique_indicesndarray、オプション

元の配列で一意の値が最初に出現したインデックス。次の場合にのみ提供されますreturn_indexはTrueです。

unique_inversendarray、オプション

一意の配列から元の配列を再構築するためのインデックス。次の場合にのみ提供されますreturn_inverseはTrueです。

unique_countsndarray、オプション

それぞれの一意の値が元の配列に現れる回数。次の場合にのみ提供されますreturn_countsはTrueです。

バージョン1.9.0の新機能。

も参照してください

numpy.lib.arraysetops

配列に対して集合演算を実行するための他の多くの関数を備えたモジュール。

繰り返す

配列の要素を繰り返します。

ノート

軸が指定されると、軸によってインデックス付けされたサブ配列がソートされます。これは、指定された軸を配列の最初の次元にし(軸を最初の次元に移動して、他の軸の順序を維持する)、次にサブ配列をCの順序で平坦化することによって行われます。平坦化されたサブ配列は、各要素にラベルが付けられた構造化タイプとして表示され、他の1次元配列と同じように扱うことができる構造化タイプの1次元配列になります。その結果、フラット化されたサブ配列は、最初の要素から辞書式順序でソートされます。

>>> np.unique([1, 1, 2, 2, 3, 3]) array([1, 2, 3]) >>> a = np.array([[1, 1], [2, 3]]) >>> np.unique(a) array([1, 2, 3]) 

2D配列の一意の行を返します

>>> a = np.array([[1, 0, 0], [1, 0, 0], [2, 3, 4]]) >>> np.unique(a, axis=0) array([[1, 0, 0], [2, 3, 4]]) 

一意の値を与える元の配列のインデックスを返します。

>>> a = np.array(['a', 'b', 'b', 'c', 'a']) >>> u, indices = np.unique(a, return_index=True) >>> u array(['a', 'b', 'c'], dtype=') >>> indices array([0, 1, 3]) >>> a[indices] array(['a', 'b', 'c'], dtype=') 

一意の値と逆数から入力配列を再構築します。

>>> a = np.array([1, 2, 6, 4, 2, 3, 2]) >>> u, indices = np.unique(a, return_inverse=True) >>> u array([1, 2, 3, 4, 6]) >>> indices array([0, 1, 4, 3, 1, 2, 1]) >>> u[indices] array([1, 2, 6, 4, 2, 3, 2]) 

一意の値とカウントから入力値を再構築します。

>>> a = np.array([1, 2, 6, 4, 2, 3, 2]) >>> values, counts = np.unique(a, return_counts=True) >>> values array([1, 2, 3, 4, 6]) >>> counts array([1, 3, 1, 1, 1]) >>> np.repeat(values, counts) array([1, 2, 2, 2, 3, 4, 6]) # original order not preserved