logo

Python'da numpy.unique()

Python'un numpy modülü, numpy dizisindeki benzersiz öğeleri bulmaya yönelik bir işlev sağlar. Numpy.unique() işlevi bir dizinin benzersiz öğelerini bulur ve bu benzersiz öğeleri sıralanmış bir dizi olarak döndürür. Benzersiz öğelerin yanı sıra, aşağıdaki gibi bazı isteğe bağlı çıktılar da vardır:

  • Çıkış, benzersiz değerleri veren giriş dizisinin endeksleri olabilir.
  • Çıktı, giriş dizisini yeniden yapılandıran benzersiz dizinin indeksleri olabilir.
  • Çıkış, her benzersiz değerin giriş dizisine gelme sayısını gösteren bir dizi olabilir.

Sözdizimi

 numpy.unique(a, return_index=False, return_inverse=False, return_counts=False, axis=None) 

Parametreler

Bunlar numpy.mean() işlevindeki aşağıdaki parametrelerdir:

a: dizi_benzeri

Bu parametre, benzersiz değerleri istenen öğeleri içeren kaynak diziyi tanımlar. Dizi 1 boyutlu dizi değilse düzleştirilecektir.

Dönüş_index'i: bool(isteğe bağlı)

Java'da geçerli tanımlayıcılar

Bu parametre True olarak ayarlanırsa, işlev giriş dizisinin indekslerini (sağlanmışsa belirtilen eksen boyunca veya düzleştirilmiş dizide) döndürür ve bu da benzersiz diziyle sonuçlanır.

return_inverse: bool(isteğe bağlı)

Bu parametre True olarak ayarlanırsa, işlev aynı zamanda giriş dizisini yeniden oluşturmak için kullanılabilecek giriş dizisinin indekslerini de döndürür (varsa belirtilen eksen boyunca veya düzleştirilmiş dizide).

Return_counts: bool(isteğe bağlı)

Bu parametre True olarak ayarlanırsa, işlev 'a' giriş dizisinde her benzersiz öğenin kaç kez göründüğünü döndürür.

eksen: int veya Yok(isteğe bağlı)

Bu parametre üzerinde çalışılacak ekseni tanımlar. Bu parametre ayarlanmazsa 'a' dizisi düzleştirilecektir. Bu parametre bir tamsayıysa, verilen eksen tarafından indekslenen alt diziler düzleştirilecek ve verilen eksenin boyutuna sahip 1 boyutlu bir dizinin bir öğesi olarak ele alınacaktır. Yapılandırılmış diziler veya nesneler içeren nesne dizileri, 'kwarg' ekseni kullanılıyorsa desteklenmez.

İadeler

Bu işlev aşağıdaki gibi dört tür çıktı döndürür:

benzersiz: ndarray

Bu çıktıda, sıralanmış benzersiz değerleri içeren bir ndarray gösterilecektir.

kış uykusuna yatmak nedir

benzersiz_indisler: ndarray(isteğe bağlı)

Bu çıktıda, orijinal dizideki benzersiz değerlerin ilk oluşumlarının indekslerini içeren bir ndarray gösterilecektir. Bu çıktı yalnızca return_index True ise sağlanır.

benzersiz_inverse: ndarray(isteğe bağlı)

Bu çıktıda, orijinal diziyi benzersiz diziden yeniden oluşturmak için indeksleri içeren bir ndarray gösterilecektir. Bu çıktı yalnızca return_inverse True ise sağlanır.

benzersiz_sayımlar: ndarray(isteğe bağlı)

Bu çıktıda, benzersiz değerlerin her birinin orijinal dizide kaç kez ortaya çıktığını içeren bir ndarray gösterilecektir. Bu çıktı yalnızca return_counts True ise sağlanır.

Java'daki diziler

Örnek 1:

 import numpy as np a=np.unique([1,2,3,4,3,6,2,4]) a 

Çıktı:

 array([1, 2, 3, 4, 6]) 

Yukarıdaki kodda

  • Numpy'yi np takma adıyla içe aktardık.
  • 'a' değişkenini bildirdik ve np.unique() fonksiyonunun döndürdüğü değeri atadık.
  • Fonksiyondaki eleman sayısını geçtik.
  • Son olarak 'a' değerini yazdırmaya çalıştık.

Çıktıda benzersiz öğeler içeren bir ndarray gösterilmiştir.

Örnek 2:

 a=np.array([[1,2,2,3,9],[1,4,3,5,8]]) a b=np.unique(a) b 

Çıktı:

 array([[1, 2, 2, 3, 9], [1, 4, 3, 5, 8]]) array([1, 2, 3, 4, 5, 8, 9]) 

Örnek 3:

 import numpy as np a = np.array([[1, 1, 0], [1, 1, 0], [2, 3, 4],[5, 9, 8],[2, 3, 4]]) a b=np.unique(a, axis=0) b 

Çıktı:

 array([[1, 1, 0], [1, 1, 0], [2, 3, 4], [5, 9, 8], [2, 3, 4]]) array([[1, 1, 0], [2, 3, 4], [5, 9, 8]]) 

Yukarıdaki kodda

  • Numpy'yi np takma adıyla içe aktardık.
  • Çok boyutlu bir 'a' dizisi oluşturduk.
  • 'b' değişkenini bildirdik ve np.unique() fonksiyonunun döndürdüğü değeri atadık.
  • Fonksiyonda çok boyutlu 'a' dizisini ve eksenini 0 olarak geçtik.
  • Son olarak 'b' değerini yazdırmaya çalıştık.

Çıktıda, 'a' kaynak dizisinin benzersiz satırlarını içeren bir ndarray gösterilmiştir.

tostring yöntemi

Örnek 4:

 import numpy as np a = np.array([[1, 1, 0], [1, 1, 0], [2, 2, 4],[5, 5, 8],[2, 2, 4]]) a b=np.unique(a, axis=1) b 

Çıktı:

 array([[1, 1, 0], [1, 1, 0], [2, 2, 4], [5, 5, 8], [2, 2, 4]]) array([[0, 1], [0, 1], [4, 2], [8, 5], [4, 2]]) 

Not: Ekseni 1 olarak ayarladığımızda bu işlev, kaynak dizideki benzersiz sütunları döndürür.

Örnek 5: return_index'i kullanın

 import numpy as np a = np.array(['d', 'b', 'b', 'z', 'a']) result, indices=np.unique(a,return_index=True) result indices a[indices] 

Çıktı:

 array(['a', 'b', 'd', 'z'], dtype='|S1') array([4, 1, 0, 3], dtype=int64) array(['a', 'b', 'd', 'z'], dtype='|S1') 

Yukarıdaki kodda

  • Numpy'yi np takma adıyla içe aktardık.
  • Bir 'a' dizisi oluşturduk.
  • 'Result' ve 'index' değişkenlerini bildirdik ve np.unique() fonksiyonunun döndürdüğü değeri atadık.
  • Fonksiyonda 'a' dizisini geçtik ve return_index'i True olarak ayarladık.
  • Son olarak, indisleri('a [indeksler]') gösteren 'result', 'index' ve dizi elemanlarının değerini yazdırmaya çalıştık.

Çıktıda orijinal dizinin benzersiz değerler veren indekslerini içeren bir ndarray gösterilmiştir.

Örnek 6: return_inverse'ü kullanın

Giriş dizisini benzersiz değerlerden aşağıdaki şekilde yeniden oluşturabiliriz:

 import numpy as np a = np.array([1, 2, 6, 4, 5, 3, 2]) result, indices=np.unique(a,return_inverse=True) result indices a[indices] 

Çıktı:

 array([1, 2, 3, 4, 5, 6]) array([0, 1, 5, 3, 4, 2, 1], dtype=int64) array([1, 2, 3, 4, 5, 6, 2])