2. bölümde numpy kütüphanesinin kullanımı görmüştük. Bu bölümde numpy kütüphanesine ait bazı fonksiyonları göreceğiz.
Buradaki fonksiyonları ezberlemenize gerek yok. Kullandıkça öğreneceksiniz. Ancak en azından fonksiyonları 1 er kere deneyerek hangi sonuçları verdiklerini görebiliriz.
Fonksiyonları liste halinde yazalım
import numpy as np np.amax()#istenilen ekssendeki maksimum değerleri iletir. np.amin() #minimum değelerleri iletir. npm.argsort() #küçükten büyüğe sıralandığında kaçıncı sırada olduğunu söyler np.concatenate() # iki numpy sizinini istenen eksenlerden birleştirir. axis=0 alt alata, axis=1 yan yana np.full() #istenen boyutta, değerde ve veri türünde numpy dizini ouşturur. np.intersect1d #iki veya daha fazla numpy dizinindeki ortak elemenları seçer np.isin( #aranılan elemanların bir liste veya dizide olup oomadığına bakar. ) np.isnan() #dizideki elanların nan (not a number: bir sayı değil) olup olmadığnnına bakar np.ones() #1 lerden meydana gelen istenilen boyutta numpy dizisi np.repeat() #tekrar eden elemanlardan meydana gelen bir dizi np.reshape() #bir numpy dizinin boyutlarını yeniden belirlemek için kullanılır np.setdiff1d() #bir dizide olup diğerinde olmayan elemanları seçmek için kullanılır. np.unique() #bir dizideki dekil değerleri gösterir. np.where() #bir dizide istenen şartları sağlayan elemanları seçer np.zeros() #sıfırdan meydana gelen istenilen boyuttaki numpy dizini oluştur. np.matmul() #matris çarpımı np.mean() #istedilen satır veya sutündaki değerlerin ortalamsını alırız np.sum() # toplamını almak için kullanılır.
Fonksiyonları görüp hemen korkmayalım 🙂
Yazılımda ezberden ziyade öğrenmek önemlidir. Fonksiyonlardan bazılarınıa kullanarak ne yaptıklarına bakalım.
import numpy as np print(np.full((3,2),1.5))

Şimdi fonksiyonları uygulayabilmek için bir numpy dizisi oluşturalım.
import numpy as np dizi=np.arange(24) #24 tane sayı oluştur matris=dizi.reshape(6,4)#6 satır 4 sütundan oluşan dizi

Aşağıdaki fonksiyonları yukardaki diziye göre yapacağız
import numpy as np dizi=np.arange(24) #24 tane sayı oluştur matris=dizi.reshape(6,4)#6 satır 4 sütundan oluşan dizi print(np.amax(matris)) #23 değerini verir. en büyük değer
import numpy as np dizi=np.arange(24) #24 tane sayı oluştur matris=dizi.reshape(6,4)#6 satır 4 sütundan oluşan dizi print(np.amin(matris)) #0 değerini verir. en küçük değer
import numpy as np dizi=np.arange(24) #24 tane sayı oluştur matris=dizi.reshape(6,4)#6 satır 4 sütundan oluşan dizi print(np.argsort(matris))

Burada 1. satır için konuşursak 0,1,2,3 sayılarından oluşuyor. Zaten sıralı olduğu için bu değerleri verdi.
import numpy as np dizi=np.arange(24) #24 tane sayı oluştur matris=dizi.reshape(6,4)#6 satır 4 sütundan oluşan dizi aranan=[3,9,34] #aranacak sayılar print(np.isin(aranan,matris)) #isin() fonksiyonu ile arama yapılır

3, 9 değerleri var. True döndü. Ancak dizimizde 34 yok bu nedenle false döndü.
repeat() fonksiyonu ile bir sizinin elamanlarını tekrarlayabiliriz.
import numpy as np print(np.repeat(3,4))

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

import numpy as np print(np.ones(5))
1 lerden oluşan diziler oluştururuz.

5 tane 1 oluşturduk. Eğer tam sayı olsun dersek
import numpy as np print(np.ones(5,dtype=int))

Çok boyutlu oluşturmak için (4 satır, 8 sütun)
import numpy as np print(np.ones((4, 8)))

0 lardan oluşan dizi
import numpy as np dizi=np.zeros((3,4),dtype=int) print(dizi)

Fonksiyonları art arda kullanabiliriz.
import numpy as np dizi=np.arange(24).reshape(6,4) #arange() ile reshape() art arda kullanıldı print(dizi)
Belirli bir filtreye göre arama yapmak
import numpy as np dizi=np.arange(0,101) ara=np.where(dizi%10 == 0) print(ara)

Burada 10 le bölündüğünde kalanı 0 olan sayıları aradık.
Numpy Kütüphanesinde Kullanılan Diğer Fonksiyonlar
import numpy as np #çok boyutlu dizi dizi=np.arange(24).reshape(6,4) dizi.max() #maksimum değer dizi.argmax() #maksimum değerin sıra nosu dizi.min() # minimum değer dizi.argmin() #minimum değer sıra numarası dizi.ptp() # vverilen eksendeki mak ve nim değerler arasındaki fark dizi.clip(min,max) #dizi de e arlaan min ve max arasındaki değerleri aynen, min düşük ise min, max tan yüksek ise max olarak iletir. dizi.round(a) #a ondaklık basamağa kadar yuvarlar dizi.trace() #köşegenler toplamı dizi.mean() #eksen boyunca ortalama değerleri hesaplar dizi.var() # eksan boyunca varyans dizi.std() #eksen boyunca standart sapma dizi.prod() #eksen boyunca sayıların çarpımı dizi.cumprod() #eksen boyunca birikimli çarpım dizi.sort() #eksendeki verilerin sıralanmış hali dizi.median() #medyan. ortanca sayı dizi.sum() # toplam dizi.corrcoef(dizi[:,0],dizi[:,1]) #birinci ve ikinci sütünların korelasyon katsayısı
import numpy as np dizi=np.arange(24).reshape(6,4) print(dizi.sum()) #sonuç 276
Sütun sütun toplamak için
import numpy as np dizi=np.arange(24).reshape(6,4) print(dizi.sum(0))

Satır satır toplamak için
import numpy as np dizi=np.arange(24).reshape(6,4) print(dizi.sum(1))

Satırların ortalamasını al
import numpy as np dizi=np.arange(24).reshape(6,4) print(dizi.mean(1))
Bütün elemanları döngü şeklinde almak için
Normalde döngü yapmak için aşağıdaki kodu kullanıyoruz
import numpy as np dizi=np.arange(24).reshape(6,4) for x in dizi: print(x)

Görüldüğü gibi çıktı istediğimiz gibi gelmedi. Her satır ayrı ayrı dizi halinde geldi. Burada bir döngü daha yapıp içindekileri de alabiliriz.
import numpy as np dizi=np.arange(24).reshape(6,4) for x in dizi: for y in x: print(y)
Bu defa istediğimiz sonuca ulaştık.

Ancak bu şekilde iç içe fonksiyon kullanmak yerine nditer fonksiyonunu kullanabiliriz.
import numpy as np dizi=np.arange(24).reshape(6,4) for x in np.nditer(dizi): print(x)
Bu şekilde yine elemanlara tek tek ulaşmış olduk.
Bir yazımızın daha sonuna geldik. Görüşlerinizi yazmak veya anlamadığınız yeri sormak için aşağıdaki yorum bölümünü kullanabilirsiniz.
Kodla kalın!