Veri Bilimi için NumPy Kütüphanesi
Veri Bilimi için NumPy Kütüphanesi
NumPy, yani Numerical Python, bilimsel hesaplamalar için hayati öneme sahip bir Python kütüphanesidir. Veri analizi, makine öğrenimi ve mühendislik uygulamaları gibi alanlarda sıkça tercih edilen NumPy, özellikle büyük veri kümeleri üzerinde hızlı ve verimli işlemler yapabilme konusunda sağladığı faydalarla öne çıkıyor.
NumPy Dizileri ve Özellikleri Nelerdir?
NumPy’ın temelini oluşturan yapılar numpy dizileridir. Bu diziler, Python’un yerleşik listelerine alternatif olarak geliştirilmiş olup, çok boyutlu verilerle çalışma konusunda büyük kolaylıklar sağlar. Numpy dizilerinin Python listelerine göre sunduğu avantajlara yakından bakalım:
- Hız: NumPy dizileri, C dilinde yazılmış içyapısı sayesinde yüksek hızda çalışır. Bu, bilimsel hesaplamalar ve büyük veri setleri üzerinde işlem yaparken önemli bir avantaj sağlar.
- İşlevsellik: Vektör ve matris işlemleri gibi karmaşık matematiksel işlemler için gelişmiş fonksiyonlar sunar. Bu da, matematiksel ifadeleri daha az kod ile ve daha okunaklı bir şekilde yazmayı mümkün kılar.
- Daha Az Hafıza Kullanımı: NumPy dizileri, verimli bir hafıza yönetimi sayesinde Python listelerine göre daha az hafıza kullanır. Bu, özellikle büyük veri setleri ile çalışırken önemli bir avantajı beraberinde getirir.
NumPy ile Veri Analizi
NumPy, veri analizi süreçlerinde temel bir araçtır. Basit istatistiksel hesaplamalardan karmaşık veri işlemlerine kadar pek çok fonksiyonu bünyesinde barındırır. Örneğin, ortalama, medyan, standart sapma gibi istatistiksel hesaplamaları kolaylıkla yapabilir; dizi üzerinde filtreleme, sıralama ve dönüşüm işlemleri gerçekleştirebilirsiniz. Ayrıca, NumPy’ın sağladığı vektörleşme özelliği sayesinde döngüler kullanmadan veri üzerinde hızlı işlemler yapabilirsiniz. Şimdi bahsettiğimiz bu işlemleri birlikte yapalım.
İlk olarak NumPy kütüphanemi pypi adresine giderek pip install numpy bağlantısını kopyalayıp editörümde çalıştırıyorum. Çalıştırdıktan sonra kütüphanemi dilediğim gibi kullanabilirim. Eğer sizde benim gibi Jupyter Notebook üzerinden işlemlerinizi yürütüyorsanız import numpy demeniz yeterli olacaktır. Dileyenler de numpy.org adresinde bulunan editör ile kuruluma gerek kalmadan birebir yaptığımız işlemleri rahatlıkla gerçekleştirebilir.
İlk olarak kütüphanemi import (dâhil) ediyorum.
import numpy as numpy
NumPy ‘da array (dizi) oluşturma.
x=np.array([1,2,3,4]) print(x)
Çıktımız aşağıdaki gibi olacaktır:
Sıfırlardan array oluşturalım.
y=numpy.zeros(10) print(y)
Çıktımız aşağıdaki gibi olacaktır:
Herhangi bir sayıdan örneğin 5 sayısından bir array oluşturalım.
y=numpy.ones(5)*5 print(y)
Çıktımız aşağıdaki gibi olacaktır:
Belirlediğim sayılar ve artışlar doğrultusunda bir array oluşturalım.
y=numpy.arange(10,50,5) print(y)
Çıktımız aşağıdaki gibi olacaktır:
0 ile 1 arasında rastgele sayıları içeren 3 satır 4 sütundan oluşan bir array yaratalım.
rast=numpy.random.rand(3,4) print(rast)
Çıktımız aşağıdaki gibi olacaktır:
5 satır 5 sütundan oluşan bir matris yaratalım.
x=numpy.eye(5) print(x)
Çıktımız aşağıdaki gibi olacaktır:
İstediğimiz satır ve sütun sayısına göre dizilerimizi oluşturalım. 1’den 24’e kadar sayıları getirdi. Reshape ile 6 satır 4 sütunlu bir dizi haline getirdim.
y=numpy.arange(24) x=y.reshape(6,4) print(x)
Çıktımız aşağıdaki gibi olacaktır:
1’den 10’a kadar olan sayıların karesini alalım. Ardından tek boyutlu dizi oluşturalım.
a=numpy.arange(10)**2 print(a)
Çıktımız aşağıdaki gibi olacaktır:
Belirli değerleri alalım. Örneğin bu uygulamamızda 3.Değerden 6.Değere kadar olan elemanları çağırdım.
print(a[3:6])
Çıktımız aşağıdaki gibi olacaktır:
Dizilerimizi döngü ile alt alta yazdıralım.
for satır in rast.flat: print(satır)
Array Birleştirme İşlemleri
Yatay olarak birleştirme.
c=numpy.hstack((a,b)) print(c)
Çıktımız aşağıdaki gibi olacaktır:
Dikey olarak birleştirme.
d=numpy.vstack((a,b)) print(d)
Çıktımız aşağıdaki gibi olacaktır:
NumpPy Matematiksel İşlemler
Standart Sapma alalım.
k=numpy.std(a) print(k)
Varyansını alalım.
u=numpy.var(a) print(u)
Medyanını alalım.
i=numpy.median(a) print(i)
Ortalamasını alalım.
j=numpy.mean(a) print(j)
Bu yazımızda NumPy’ın bilimsel hesaplamalarımız için nasıl hayati öneme sahip bir Python kütüphanesi olduğunu; Veri analizi, makine öğrenimi ve mühendislik uygulamaları gibi alanlarda sıkça tercih edilmesinin sebeplerini ve özellikle büyük veri kümeleri üzerinde hızlı ve verimli işlemler yapabilme konusunda bizlere sağladığı faydaları mercek altına aldık.