Python, veri bilimi için en çok tercih edilen programlama dillerinden biridir. Esnekliği, geniş kütüphane desteği ve topluluk katkısıyla veri analizi, istatistiksel modelleme, makine öğrenimi ve veri görselleştirme gibi birçok alanda yaygın olarak kullanılır.
Veri bilimiyle ilgilenirken Python’da temel olarak kullanılan kütüphaneler şunlardır:
1. Numpy
Numpy, Python’da çok boyutlu dizilerle (array) çalışmayı sağlayan temel bir kütüphanedir. Yüksek verimli matematiksel işlemler yapmak için kullanılır.
Temel Numpy Örneği:
import numpy as np
# Bir Numpy array'i oluşturma
data = np.array([1, 2, 3, 4, 5])
# Temel işlemler
print("Array:", data)
print("Toplam:", np.sum(data))
print("Ortalama:", np.mean(data))
print("Standart Sapma:", np.std(data))
Numpy veri bilimi projelerinde verilerin temel işlenmesi, istatistiksel analiz ve matris hesaplamaları için kullanılır.
2. Pandas
Pandas, yapılandırılmış verilerle (örneğin, CSV dosyaları) çalışmayı kolaylaştırır. Veri çerçeveleri (DataFrame) adı verilen yapılarla tabular veri işleme yapmanıza olanak sağlar. Veri analizi ve temizleme işlemleri için çok güçlü bir araçtır.
Temel Pandas Örneği:
import pandas as pd
# CSV dosyasından veri yükleme
df = pd.read_csv('veri.csv')
# Veriyi görüntüleme
print(df.head()) # İlk 5 satırı gösterir
# Temel analizler
print(df.describe()) # İstatistiksel özet
print(df['sütun_adı'].mean()) # Bir sütunun ortalaması
Pandas, veri keşfi ve analiz sürecinde veri setlerini filtrelemek, temizlemek ve özetlemek için kullanılır.
3. Matplotlib ve Seaborn
Matplotlib ve Seaborn, Python'da veri görselleştirme için kullanılan iki popüler kütüphanedir. Matplotlib düşük seviyede çizim kontrolü sunarken, Seaborn daha yüksek seviyede, istatistiksel olarak zengin grafikler üretir.
Matplotlib ile Örnek Grafik:
import matplotlib.pyplot as plt
# Basit bir çizgi grafiği
x = [1, 2, 3, 4]
y = [10, 20, 25, 30]
plt.plot(x, y)
plt.title('Çizgi Grafiği')
plt.xlabel('X ekseni')
plt.ylabel('Y ekseni')
plt.show()
Seaborn ile Örnek Grafik:
import seaborn as sns
import pandas as pd
# Örnek veri seti yükleme
df = sns.load_dataset('tips')
# Basit bir dağılım grafiği
sns.scatterplot(x='total_bill', y='tip', data=df)
plt.show()
Bu kütüphaneler, veriyi anlamlandırmak için grafikler ve görselleştirmeler üretmekte çok kullanışlıdır.
4. Scikit-learn
Scikit-learn, Python'da makine öğrenimi algoritmalarını uygulamak için en yaygın kullanılan kütüphanelerden biridir. Regresyon, sınıflandırma, kümeleme gibi algoritmalar içerir.
Temel Scikit-learn Örneği (Basit Lineer Regresyon):
from sklearn.linear_model import LinearRegression
import numpy as np
# Veri seti
X = np.array([[1], [2], [3], [4], [5]])
y = np.array([1, 4, 9, 16, 25])
# Model oluşturma
model = LinearRegression()
model.fit(X, y)
# Tahmin
print(model.predict([[6]])) # 6 için tahmin
Scikit-learn, hızlı prototipler oluşturmak ve çeşitli makine öğrenimi algoritmalarını uygulamak için harika bir araçtır.
5. TensorFlow ve PyTorch
Makine öğrenimi ve derin öğrenme alanında en yaygın kullanılan iki framework, TensorFlow ve PyTorch’tur. Özellikle büyük veri setlerinde karmaşık yapay sinir ağı modelleri geliştirmek için kullanılırlar.
TensorFlow Örneği (Keras API ile Basit Sinir Ağı):
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
# Model oluşturma
model = Sequential()
model.add(Dense(64, input_dim=8, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
# Modeli derleme
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
# Modeli eğitme (örnek verilerle)
model.fit(X_train, y_train, epochs=10, batch_size=32)
Bu kütüphaneler, büyük ölçekli projeler ve karmaşık derin öğrenme modelleri için kullanılır.
Veri Bilimi İçin Adımlar:
- Veri Toplama: Pandas gibi kütüphanelerle CSV, Excel, JSON gibi formatlardan veri yükleyin.
- Veri Temizleme ve Manipülasyon: Eksik verileri temizleyin, veri tiplerini düzenleyin ve analize uygun hale getirin.
- Keşifsel Veri Analizi (EDA): Matplotlib, Seaborn gibi kütüphanelerle veriyi görselleştirin ve anlamlı özet istatistikler çıkarın.
- Modelleme: Scikit-learn, TensorFlow gibi kütüphanelerle makine öğrenimi modelleri oluşturun ve eğitin.
- Değerlendirme ve İyileştirme: Model performansını test edin ve gerekli optimizasyonları yapın.
Python'da veri bilimi projeleri bu süreçleri takip ederek oluşturulur. Özellikle hangi alanlarda uygulama yapmayı planlıyorsunuz?