Başlık: Başlangıç

    NumPy, Numerical Python’un kısaltmasıdır. Python programlamadaki en yararlı bilimsel kütüphanelerden biridir. Büyük çok boyutlu dizi nesneleri ve bunlarla çalışmak için çeşitli araçlar sağlar.

    Pandas, Matplotlib ve Scikit-learn gibi çeşitli diğer kütüphaneler bu kütüphanenin üzerine inşa edilmiştir. Veri bilimi araç setinin zeminini oluşturur.

    Numpy dizileri listelerden farklı olarak sadece tek türde veri içerir. Numpy dizisine farklı veriler tanımlarsanız bile bu veriler aynı veri tipine çevrilir.

    Listeler üzerinde matematik veya istatistik işlemleri yapılabilir.

    Büyük boyutlu dizileri kolaylıkla işleyebilir.

    Normalde Nparray ile integer tipinde elemanları olan bir dizi üretilir. Float tipinde elemanları olan bir dizi üretmek için dtype komutu dtype=np.float  biçiminde kullanılır.

    Bir dizinin elemanlarını random sayı ile doldurmak için np.random.rand() metodu kullanılır.

    Belli bir atlama değeri ile dizi oluşturmak için np.arange() metodunun kullanılır.

    np.arange(10) # array([0,1,2,3,4,5,6,7,8,9])
    np.arange(2,10,2) # array([2,4,6,8])

    Diziler, bir veya daha fazla boyuta sahip olabilen öğeler/değerler koleksiyonudur.

    Tek boyutlu bir dizi vektör, iki boyuta sahip bir dizi ise matris olarak adlandırılır.

    NumPy dizileri ndarray veya N boyutlu diziler olarak adlandırılır. Aynı tür ve boyuttaki öğeleri depolar. Yüksek performansıyla bilinir ve dizilerin boyutu büyüdükçe verimli depolama ve veri işlemleri sağlar.

    import numpy as np

    Numpy Kurulumu

    pip install numpy

    Numpy Sürüm Kontrolü

    import numpy as np 
    print(np.version)

    Numpy Dizisi Oluşturma

    Numpy dizisi oluşturmak için np.array() metodu kullanılır.

    ÖRNEK:

    import numpy as np
    arr = np.array([1, 2, 3, 4, 5])
    print(arr)
    print(type(arr))

    Dizi Tipini Tanımlayarak Dizi Oluşturma

    import numpy as np
    arr = np.array([1, 2, 3, 4], dtype='S')
    print(arr)
    print(arr.dtype)

    Dizi Tipini Dönüştürme

    astype metodu dizi boyutunu döndürür.

    Diziler için veri tipleri aşağıda listelenmiştir.

    • i – integer
    • b – boolean
    • u – unsigned integer
    • f – float
    • c – complex float
    • m – timedelta
    • M – datetime
    • O – object
    • S – string
    • U – unicode string
    • V – fixed chunk of memory for other type ( void )

    ÖRNEK:

    import numpy as np
    arr = np.array([1.1, 2.1, 3.1])
    newarr = arr.astype('i')
    print(newarr)
    print(newarr.dtype)
    

    Çok Boyutlu Diziler

    Tek Boyutlu Dizi Tanımlama

    import numpy as np
    arr = np.array([1, 2, 3, 4, 5])
    print(arr)

    Çift Boyutlu Dizi Tanımlama

    import numpy as np
    arr = np.array([[1, 2, 3], [4, 5, 6]])
    print(arr)

    Üç veya Daha Fazla Boyutlu Dizi Tanımlama

    import numpy as np
    arr = np.array([[[1, 2, 3], [4, 5, 6]], [[1, 2, 3], [4, 5, 6]]])
    print(arr)

    Dizi Boyutunu Döndürme

    ndim metodu dizi boyutunu döndürür.

    ÖRNEK:

    import numpy as np
    
    a = np.array(42)
    b = np.array([1, 2, 3, 4, 5])
    c = np.array([[1, 2, 3], [4, 5, 6]])
    d = np.array([[[1, 2, 3], [4, 5, 6]], [[1, 2, 3], [4, 5, 6]]])
    
    print(a.ndim)
    print(b.ndim)
    print(c.ndim)
    print(d.ndim)

    Dizi Tipini Döndürme

    dtype metodu dizi tipini döndürür.

    import numpy as np
    arr = np.array([1, 2, 3, 4])
    print(arr.dtype)

    Dilimlemeler

    Bir Boyutlu Diziyi Dilimleme

    dizim3 = np.array([1,2,3,4,5,6,7,8,9,10])
    print(dizim3[1:9:2]) # [2 4 6 8]

    İki Boyutlu Diziyi Dilimleme

    dizim4 = np.array([1,2,3,4,5],[6,7,8,9,10])
    print(dizim4[0:0]) # 1
    print(dizim4[1:2]) # 8
    print(dizim4[1:0]) # 6

    Dizi Kopyası Oluşturma

    Orjinaline zarar vermeden aynısının bir kopyasını çıkartır.

    ÖRNEK:

    import numpy as np
    arr = np.array([1, 2, 3, 4, 5])
    x = arr.copy()
    arr[0] = 42
    print(arr)
    print(x)

    Dizi Görüntüsü Oluşturma

    Dizinin birebir aynısının bir görüntüsünü yapar. Orjinali değişince görüntüsü de değişir.

    ÖRNEK:

    import numpy as np
    arr = np.array([1, 2, 3, 4, 5])
    x = arr.view()
    arr[0] = 42
    print(arr)
    print(x)

    Dizi Birleştirme

    concatenate metodu iki veya daha fazla diziyi birleştirir.

    ÖRNEK:

    import numpy as np
    arr1 = np.array([1, 2, 3])
    arr2 = np.array([4, 5, 6])
    arr = np.concatenate((arr1, arr2))
    print(arr)
    

    Dizi Bölme

    array_split metodu diziyi verilen adete kadar alt dizilere böler.

    ÖRNEK:

    import numpy as np
    arr = np.array([1, 2, 3, 4, 5, 6])
    newarr = np.array_split(arr, 3)
    print(newarr)

    Dizi içi Arama

    where metodu dizinin içerisinde verilen değeri arar bulduğu değerin index’ini döndürür.

    ÖRNEK:

    import numpy as np
    arr = np.array([1, 2, 3, 4, 5, 4, 4])
    x = np.where(arr == 4)
    print(x)

    Dizi içi Sıralama

    sort metodu dizinin içerisini sıralar.

    ÖRNEK:

    import numpy as np
    arr = np.array(['banana', 'cherry', 'apple'])
    print(np.sort(arr))