Modern dünyada veri her alandaki kararların temelini oluşturur. İşletmelerden bilimsel araştırmalara, pazarlama analizlerinden makine öğrenimi projelerine kadar her yerde veri analizi becerilerine ihtiyaç duyulur.
Python programlama dili, güçlü kütüphaneleri sayesinde veri analizi için ideal bir seçim haline gelmiştir. Bu rehberde NumPy ve Pandas kütüphanelerinin temellerini öğrenerek veri analizi yolculuğunuza başlayacaksınız.
Özel Ders Alanı
En İyi Python Özel Ders Öğretmenlerinden Ders Al
"Veri analizi öğrenmek, 21. yüzyılın en değerli becerilerinden biridir. Python ile bu beceriyi kazanmak hem keyifli hem de etkili bir yoldur."
— Veri Bilimi Uzmanları
#1
Veri Analizi Dili
84%
Veri Bilimci Kullanımı
100x
Hız Artışı NumPy ile
Python ve Veri Analizi Neden Önemli?
Python, veri analizi dünyasında lider konuma sahip bir programlama dilidir. Basit sözdizimi, geniş kütüphane ekosistemi ve güçlü topluluk desteği sayesinde hem yeni başlayanlar hem de deneyimli geliştiriciler tarafından tercih edilir. Python özel dersler alarak bu güçlü dili etkin şekilde öğrenebilirsiniz.
Veri analizi sürecinde Python'un öne çıkmasının temel nedenleri şunlardır: hızlı prototipleme imkanı, büyük veri setleriyle etkili çalışma, görselleştirme araçlarıyla entegrasyon ve makine öğrenimi kütüphaneleriyle uyumluluk. Bu özellikler Python'u veri biliminin vazgeçilmez aracı haline getirmiştir.
NumPy Kütüphanesine Giriş
Numerical Python - Bilimsel Hesaplamaların Temeli
NumPy Temel İşlemler
1. Dizi Oluşturma
# Temel dizi oluşturma
arr1 = np.array([1, 2, 3, 4, 5])
print(arr1) # [1 2 3 4 5]
# 2D dizi oluşturma
arr2d = np.array([[1, 2, 3], [4, 5, 6]])
print(arr2d.shape) # (2, 3)
# Sıfırlarla dolu dizi
zeros = np.zeros((3, 4))
print(zeros)
# Birlerle dolu dizi
ones = np.ones((2, 3))
print(ones)
# Belirli aralıkta dizi
range_arr = np.arange(0, 10, 2)
print(range_arr) # [0 2 4 6 8]
2. Dizi İşlemleri
# Matematiksel işlemler
arr = np.array([1, 2, 3, 4, 5])
# Toplama
result_add = arr + 10
print(result_add) # [11 12 13 14 15]
# Çarpma
result_mult = arr * 2
print(result_mult) # [2 4 6 8 10]
# Karekök
result_sqrt = np.sqrt(arr)
print(result_sqrt) # [1. 1.41 1.73 2. 2.24]
# İstatistiksel işlemler
print(f"Ortalama: {np.mean(arr)}") # 3.0
print(f"Medyan: {np.median(arr)}") # 3.0
print(f"Standart sapma: {np.std(arr)}") # 1.58
Pandas Kütüphanesine Giriş
Python Data Analysis Library - Veri Manipülasyonunun Ustası
DataFrame
Temel Yapı
- 2 boyutlu etiketli veri yapısı
- Excel benzeri tablo formatı
- Farklı veri türlerini destekler
Series
1 Boyutlu
- Etiketli tek boyutlu dizi
- DataFrame'in temel bileşeni
- İndeks ile erişim
Temel İşlemler
Özellikler
- Veri okuma/yazma
- Filtreleme ve seçim
- Gruplama ve toplama
Pandas Temel İşlemler
1. DataFrame Oluşturma ve Temel İşlemler
import pandas as pd
import numpy as np
# DataFrame oluşturma
data = {
'isim': ['Ahmet', 'Fatma', 'Mehmet', 'Ayşe'],
'yaş': [25, 30, 35, 28],
'şehir': ['İstanbul', 'Ankara', 'İzmir', 'Bursa'],
'maaş': [5000, 6000, 7000, 5500]
}
df = pd.DataFrame(data)
print(df)
# isim yaş şehir maaş
# 0 Ahmet 25 İstanbul 5000
# 1 Fatma 30 Ankara 6000
# 2 Mehmet 35 İzmir 7000
# 3 Ayşe 28 Bursa 5500
# Temel bilgiler
print(f"Satır sayısı: {len(df)}")
print(f"Sütun isimleri: {df.columns.tolist()}")
print(f"Veri türleri:\n{df.dtypes}")
print(f"İstatistik özeti:\n{df.describe()}")
2. Veri Filtreleme ve Seçim
# Tek sütun seçme
isimler = df['isim']
print(isimler)
# Birden fazla sütun seçme
info = df[['isim', 'yaş']]
print(info)
# Koşullu filtreleme
yüksek_maaş = df[df['maaş'] > 5500]
print(yüksek_maaş)
# Birden fazla koşul
istanbul_ve_genç = df[(df['şehir'] == 'İstanbul') & (df['yaş'] < 30)]
print(istanbul_ve_genç)
# İndeks ile seçim
print(df.iloc[0]) # İlk satır
print(df.loc[0, 'isim']) # Belirli hücre
# Sıralama
yaş_sıralı = df.sort_values('yaş', ascending=False)
print(yaş_sıralı)
Önemli Not
NumPy ve Pandas öğrenirken matematik temelleri çok önemlidir. İstatistik, lineer cebir ve veri analizi konularında güçlü bir temel, veri bilimi yolculuğunuzda size büyük avantaj sağlayacaktır.
Pratik Örnekler ve Kullanım Alanları
Gerçek dünya senaryoları ile öğrenin
Finans ve Borsa Analizi
-
₺
Hisse senedi fiyat analizi
Tarihsel verilerle trend analizi
-
📊
Risk hesaplama
Portföy optimizasyonu
-
📈
Teknik analiz
Hareketli ortalamalar
E-ticaret ve Pazarlama
-
🛒
Satış analizi
Ürün performans raporları
-
👥
Müşteri segmentasyonu
Hedef kitle belirleme
-
📊
A/B test analizi
Kampanya optimizasyonu
Bilimsel Araştırma
-
🔬
Deney verisi analizi
İstatistiksel testler
-
📊
Veri görselleştirme
Grafik ve çizelgeler
-
📈
Makine öğrenimi
Model eğitimi
Pratik Proje: Satış Verisi Analizi
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
# CSV dosyasından veri okuma
satislar = pd.read_csv('satislar.csv')
# Veri özeti
print("Veri seti bilgileri:")
print(f"Toplam kayıt: {len(satislar)}")
print(f"Sütunlar: {satislar.columns.tolist()}")
# Eksik veri kontrolü
print(f"Eksik veriler:\n{satislar.isnull().sum()}")
# Temel istatistikler
print(f"Toplam satış: {satislar['miktar'].sum():,} TL")
print(f"Ortalama sipariş: {satislar['miktar'].mean():.2f} TL")
print(f"En yüksek satış: {satislar['miktar'].max():,} TL")
# Aylık satış analizi
satislar['tarih'] = pd.to_datetime(satislar['tarih'])
satislar['ay'] = satislar['tarih'].dt.month
aylik_satislar = satislar.groupby('ay')['miktar'].sum()
print(f"Aylık satışlar:\n{aylik_satislar}")
# En çok satan ürünler
top_urunler = satislar.groupby('urun')['miktar'].sum().sort_values(ascending=False).head(5)
print(f"Top 5 ürün:\n{top_urunler}")
# Şehir bazlı analiz
sehir_analizi = satislar.groupby('sehir').agg({
'miktar': ['sum', 'mean', 'count']
}).round(2)
print(f"Şehir analizi:\n{sehir_analizi}")
Bu örnek, gerçek bir e-ticaret verisinin nasıl analiz edileceğini gösterir. Online Python dersleri ile böyle projeleri adım adım öğrenebilirsiniz.
İleri Seviye İpuçları
Performans ve verimlilik için önemli teknikler
Performans Optimizasyonu
-
Vectorization Kullanın
For döngüleri yerine NumPy fonksiyonları
-
Uygun Veri Türleri
int32, float32 kullanarak bellek tasarrufu
-
Chunking
Büyük veri setlerini parça parça işleme
Veri Temizleme
-
Eksik Veri Yönetimi
fillna(), dropna() stratejileri
-
Outlier Tespiti
IQR yöntemi ve z-score
-
Veri Doğrulama
Tutarlılık kontrolleri
En İyi Uygulamalar
-
Kod Dokumentasyonu
Açık ve anlaşılır yorumlar
-
Version Control
Git ile versiyon takibi
-
Testing
Unit testler ile kod kalitesi
Gelişmiş Veri Analizi Teknikleri
# Gelişmiş veri analizi teknikleri
import pandas as pd
import numpy as np
from scipy import stats
# Performanslı okuma
df = pd.read_csv('large_dataset.csv',
dtype={'kategori': 'category'},
parse_dates=['tarih'],
chunksize=10000)
# Memory usage optimization
def optimize_dtypes(df):
for col in df.columns:
if df[col].dtype == 'int64':
df[col] = pd.to_numeric(df[col], downcast='integer')
elif df[col].dtype == 'float64':
df[col] = pd.to_numeric(df[col], downcast='float')
return df
# Outlier detection
def detect_outliers(df, column):
Q1 = df[column].quantile(0.25)
Q3 = df[column].quantile(0.75)
IQR = Q3 - Q1
lower_bound = Q1 - 1.5 * IQR
upper_bound = Q3 + 1.5 * IQR
return df[(df[column] < lower_bound) | (df[column] > upper_bound)]
# Rolling statistics
df['moving_avg_7'] = df['satislar'].rolling(window=7).mean()
df['rolling_std'] = df['satislar'].rolling(window=7).std()
# Group operations with multiple aggregations
summary = df.groupby(['category', 'region']).agg({
'sales': ['sum', 'mean', 'std', 'count'],
'profit': ['sum', 'mean'],
'date': ['min', 'max']
}).round(2)
print("Gelişmiş analiz tamamlandı!")
Öğrenme Yolculuğunuz İçin Öneriler
Sistematik bir yaklaşımla başarıya ulaşın
6 Adımda Veri Analizinde Uzmanlaşın
Python Temellerini Öğrenin
Değişkenler, veri türleri, döngüler ve fonksiyonlar. Kodlama dersleri ile temelleri sağlam atın.
NumPy ile Başlayın
Diziler, indexing, mathematical operations ve array manipülasyonu öğrenin.
Pandas'a Geçiş Yapın
DataFrame ve Series yapıları, veri okuma/yazma, filtreleme ve gruplama.
Gerçek Projeler Yapın
Kendi veri setlerinizle pratik yapın ve portföy oluşturun.
Görselleştirme Öğrenin
Matplotlib, Seaborn ile veri hikayelerinizi anlatın.
İleri Konulara Geçin
Yapay zeka ve makine öğrenimi algoritmaları ile becerilerinizi geliştirin.
Faydalı Kaynaklar ve Araçlar
Geliştirme Ortamları
-
Jupyter Notebook
Veri analizi için ideal
-
Google Colab
Ücretsiz GPU ile
-
VS Code
Tam özellikli IDE
Veri Setleri
-
Kaggle
Yarışmalar ve veri setleri
-
UCI Repository
Akademik veri setleri
-
Data.gov
Kamu veri setleri
Öğrenme Platformları
-
Pandas Docs
Resmi dokümantasyon
-
NumPy Tutorials
İnteraktif öğrenme
-
Stack Overflow
Topluluk desteği
Veri Analizi Yolculuğunuzda Başarılar
Python, NumPy ve Pandas ile veri analizinde uzmanlaşarak kariyer hedeflerinize ulaşabilirsiniz. Düzenli pratik ve doğru rehberlikle bu güçlü araçları etkin şekilde kullanmayı öğreneceksiniz.
Görüşlerinizi Bizimle Paylaşın (0)