Veri Bilimi & Veri Manipülasyonu - Numpy

Dizilerde Sıralama

Yayın tarihi :15-Ara-21
Bölüm kodlarını ve/veya veri setlerini indir.

Dizilerde sıralama işlemini yapabilmek için "sort()" komutu kullanılır.

Söz dizimi: np.sort(a, axis=-1, kind=None, order=None)

  • a, sıralama yapılacak diziyi temsil eder.
  • axis, sıralanacak ekseni temsil eder.
  • kind, sıralama türünü temsil eder. "quicksort", "mergesort", "heapsort", "stable" değerlerini alabilir. Varsayılan olarak "quicksort" dur.

"sort()" komutu yukarıdaki söz dizimi şeklinde kullanılacağı gibi tanımlanan dizi değişkeninden sonra da kullanılabilir. Ama bu kullanım dizinin yapısını da sıralı bir şekilde değiştirecektir.

Sıralama işlemi küçükten büyüğe doğru yapılmaktadır. Eğer büyükten küçüğe yapılmak istenirse listenin başına ve komut satırının başına "-" işareti konulabilir.

Örnek-1: Rasgele verilerden oluşan bir dizi oluşturalım ve küçükten büyüğe sıralama işlemi yaptıralım.

import numpy as np

array=np.random.randint(-10,10,15)
print(f"Sırasız dizi: {array}")

array_sort=np.sort(array)
print(f"Küçükten büyüğe sıralı dizi: {array_sort}")

Çıktı:

Sırasız dizi: [  6  -9   4   9  -2   7   9 -10  -8  -3  -4  -5  -7   1  -4]
Küçükten büyüğe sıralı dizi: [-10  -9  -8  -7  -5  -4  -4  -3  -2   1   4   6   7   9   9]

Örnek-2: Rasgele verilerden oluşan bir dizi oluşturalım ve büyükten küçüğe sıralama işlemi yaptıralım.

import numpy as np

array=np.random.randint(-10,10,15)
print(f"Sırasız dizi: {array}")

#büyükten küçüğe sıralamak için "-" işaretleri kondu.
array_sort=-np.sort(-array)
print(f"Büyükten küçüğe sıralı dizi: {array_sort}")

Çıktı:

Sırasız dizi: [ 8 -7 -6  9 -8 -2  5  2 -6 -7 -9 -9  3  8 -3]
Büyükten küçüğe sıralı dizi: [ 9  8  8  5  3  2 -2 -3 -6 -6 -7 -7 -8 -9 -9]

Örnek-3: Rasgele verilerden oluşan bir çok boyutlu dizi oluşturalım ve küçükten büyüğe sıralama işlemi yaptıralım.

import numpy as np

array=np.random.randint(-10,10,(4,4))
print(f"Sırasız dizi: \n {array}")

#yatayda her satır kendi arasında sıralama için axis=1
array_sort=np.sort(array,axis=1)
print(f"Küçükten büyüğe sıralı dizi: \n  {array_sort}")

Çıktı:

Sırasız dizi: 
 [[ 2 -8 -7  4]
 [-8  6 -2  6]
 [ 1  5 -2  6]
 [ 3 -8 -9 -6]]
Küçükten büyüğe sıralı dizi: 
  [[-8 -7  2  4]
 [-8 -2  6  6]
 [-2  1  5  6]
 [-9 -8 -6  3]]
import numpy as np

array=np.random.randint(-10,10,(4,4))
print(f"Sırasız dizi: \n {array}")

#dikeyde her sütun kendi arasında sıralama için axis=0
array_sort=np.sort(array,axis=0)
print(f"Küçükten büyüğe sıralı dizi: \n  {array_sort}")

Çıktı:

Sırasız dizi: 
 [[ 6  7  9  7]
 [-3 -7 -3  1]
 [-8 -7  6  8]
 [-4  3  9  7]]
Küçükten büyüğe sıralı dizi: 
  [[-8 -7 -3  1]
 [-4 -7  6  7]
 [-3  3  9  7]
 [ 6  7  9  8]]

Örnek-4: Rasgele verilerden oluşan bir dizi oluşturalım ve küçükten büyüğe sıralama işlemi yaptıralım. (Bu sıralama işleminde np.sort() komutu yerine degiskenadı.sort() olarak işlem yapalım)

import numpy as np

array=np.random.randint(-10,10,15)
print(f"Sırasız dizi: {array}")

array.sort()
print(f"Küçükten büyüğe sıralı dizi: {array}")

Çıktı:

Sırasız dizi: [-7 -9 -7 -5  5  3 -3  6 -9 -6 -4  5 -6 -3  3]
Küçükten büyüğe sıralı dizi: [-9 -9 -7 -7 -6 -6 -5 -4 -3 -3  3  3  5  5  6]

Yukarıdaki çıktıda görüldüğü üzere degiskenadı.sort() ifadesini bir değişkene atama yapmamamıza rağmen dizinin yapısı sıralı şekilde değişmiş oldu.

Paylaş:

Yorum Yap (*Yorumunuza kod eklemek isterseniz Kod Parçacığı Ekle butonuna tıklayarak ekleyebilirsiniz.)

Yorumlar

Henüz hiç yorum yapılmamış, ilk yorum yapan sen ol.