NumPy (Numerical Python), Python dilinde sayısal hesaplamalar yapmak için kullanılan temel bir kütüphanedir. NumPy, çok boyutlu diziler ve matrisler üzerinde yüksek performanslı matematiksel işlemler yapmak için araçlar sağlar ve bu nedenle veri bilimi, makine öğrenimi, bilimsel hesaplama ve mühendislik gibi alanlarda yaygın olarak kullanılır. NumPy kütüphanesi hakkında daha fazla bilgi için web sayfasını ziyaret edebilirsiniz.
İşte NumPy kütüphanesinin ana özellikleri:
- Çok Boyutlu Diziler (Arrays): NumPy, n-boyutlu dizilerin (ndarray) temelini oluşturur. Bu diziler, aynı türdeki verileri içerebilir ve hızlı ve etkili bir şekilde ele alınabilir. Çok boyutlu diziler, vektörler, matrisler ve daha karmaşık veri yapıları gibi birçok uygulama için temel veri yapısı olarak kullanılır.
- Matematiksel Fonksiyonlar ve İşlemler: NumPy, matematiksel fonksiyonlar ve işlemler için geniş bir kütüphane sağlar. Bu fonksiyonlar arasında trigonometrik, logaritmik, üstel, trigonometrik fonksiyonlar, lineer cebir işlemleri, istatistiksel fonksiyonlar gibi birçok işlev bulunur.
- Yüksek Performanslı İşlemler: NumPy, C ve Fortran gibi alt düzey dillerde yazılmış altyapıları kullanarak, sayısal işlemleri hızlı bir şekilde gerçekleştirir. Bu, büyük veri setlerinde verimli hesaplamalar yapmak için önemlidir ve veri bilimi alanındaki hesaplamalı işlemler için idealdir.
- Rastgele Sayı Üretimi: NumPy, rastgele sayı üretimi için kullanışlı fonksiyonlar sağlar. Bu, istatistiksel simülasyonlar, monte carlo yöntemleri ve test verisi oluşturma gibi uygulamalarda yaygın olarak kullanılır.
- Lineer Cebir İşlemleri: NumPy, lineer cebir işlemleri için birçok fonksiyon ve metod sağlar. Bu, matris çarpımı, ters matris hesaplama, çözümleme gibi işlemler için kullanılır ve makine öğrenimi gibi alanlarda sıklıkla gereklidir.
NumPy, Python’un veri bilimi alanındaki en temel ve vazgeçilmez kütüphanelerinden biridir ve genellikle diğer veri analizi ve bilimsel hesaplama kütüphaneleriyle birlikte kullanılır (örneğin, Pandas, Matplotlib, SciPy vb.).
NumPy Diziler ve İşlemleri 1
1.Adım: NumPy Kütüphanesini İçe Aktarma
İlk adım olarak, NumPy kütüphanesini Python kodumuza dahil edelim. Bunu yapmak için import numpy as np satırını kullanacağız. Bu, NumPy kütüphanesini np takma adıyla içe aktarır.
import numpy as np
2.Adım: 1 Boyutlu NumPy Dizisi Oluşturma
NumPy ile bir 1 boyutlu dizi oluşturmak için np.array() fonksiyonunu kullanırız. Örneğin, [1, 2, 3, 4, 5] şeklinde bir dizi oluşturalım ve bunu a adında bir değişkene atayalım.
a = np.array([1, 2, 3, 4, 5])
print("1D NumPy Dizisi:")
print(a)
# [1 2 3 4 5]
3.Adım: 2 Boyutlu NumPy Dizisi Oluşturma
2 boyutlu bir NumPy dizisi oluşturmak için, bir iç içe liste kullanırız. Örneğin, [[1, 2, 3], [4, 5, 6]] şeklinde bir dizi oluşturalım ve bunu b adında bir değişkene atayalım.
b = np.array([[1, 2, 3], [4, 5, 6]])
print("2D NumPy Dizisi:")
print(b)
# [[1 2 3]
# [4 5 6]]
4.Adım: Sıfırlardan Oluşan Bir Dizi Oluşturma
Belirli bir boyutta sıfırlardan oluşan bir NumPy dizisi oluşturmak için np.zeros() fonksiyonunu kullanırız. Örneğin, 2 satır ve 3 sütundan oluşan bir dizi oluşturalım.
zeros_array = np.zeros((2, 3))
print("Sıfırlardan Oluşan Dizi:")
print(zeros_array)
# [[0. 0. 0.]
# [0. 0. 0.]]
5.Adım: Birlerden Oluşan Bir Dizi Oluşturma
Belirli bir boyutta birlerden oluşan bir NumPy dizisi oluşturmak için np.ones() fonksiyonunu kullanırız. Örneğin, 3 satır ve 2 sütundan oluşan bir dizi oluşturalım.
ones_array = np.ones((3, 2))
print("Birlerden Oluşan Dizi:")
print(ones_array)
# [[1. 1.]
# [1. 1.]
# [1. 1.]]
6.Adım: Belirli Aralıkta Sayılar Üretme
NumPy, belirli bir aralıktaki sayıları üretmek için np.arange() fonksiyonunu sağlar. Bu fonksiyon, başlangıç, bitiş ve adım parametrelerini alır. Örneğin, 0’dan 10’a kadar (dahil olmayacak şekilde) 2’şer artan sayılar içeren bir dizi oluşturalım.
c = np.arange(0, 10, 2)
print("Arange ile Dizi Oluşturma:")
print(c)
# [0 2 4 6 8]
7.Adım: Diziyi Yeniden Şekillendirme
NumPy ile bir diziyi yeniden şekillendirmek için reshape() fonksiyonunu kullanırız. Örneğin, a adındaki 1D dizimizi 5 satır ve 1 sütundan oluşan bir 2D diziye dönüştürelim.
yeni_dizi = a.reshape(5, 1)
print("Yeniden Şekillendirilmiş Dizi:")
print(yeni_dizi)
# [[1]
# [2]
# [3]
# [4]
# [5]]
8.Adım: Dizinin Elemanlarını Toplama
NumPy ile bir dizinin elemanlarını toplamak için np.sum() fonksiyonunu kullanırız. Örneğin, a dizisinin elemanlarını toplayalım.
toplam = np.sum(a)
print("Dizinin Elemanlarının Toplamı:")
print(toplam)
# 15
9.Adım: Matris Çarpımı
NumPy ile iki matris arasında matris çarpımı yapmak için np.dot() fonksiyonunu kullanırız. Örneğin, matrix_1 ve matrix_2 adında iki matris oluşturalım ve bunların çarpımını hesaplayalım.
matrix_1 = np.array([[1, 2], [3, 4]])
matrix_2 = np.array([[5, 6], [7, 8]])
carpilmis_matrix = np.dot(matrix_1, matrix_2)
print("Matris Çarpımı:")
print(carpilmis_matrix)
# [[19 22]
# [43 50]]
