Veri temizleme, veri bilimi projelerinin belki de en kritik adımıdır. Ancak, bu aşama genellikle göz ardı edilir. Çoğu zaman temel düzeyde veri temizleme tekniklerine odaklanılırken, biz bugün daha derinlere inmeyi ve ileri seviye tekniklerle nasıl işlerimizi kolaylaştırabileceğimizi keşfedeceğiz.
Veri Temizleme Sürecinin Temelleri
1. Eksik Veriler: Verilerin içinde boş (NaN) veya eksik değerler olabilir. Bu durumlar, analizlerinizin doğruluğunu ciddi şekilde etkileyebilir. Pandas kütüphanesi ile eksik verileri nasıl tespit edebileceğimizi ve nasıl handle edebileceğimizi öğreneceğiz.
2. Duplikatlar: Aynı verinin birden fazla kez kaydedilmesi, verinin doğru analiz edilmesini engeller. Python ve Pandas ile nasıl duplikatları tespit edebilir ve silebiliriz? Bunu detaylı bir şekilde inceleyeceğiz.
3. Format Hataları: Verinin düzgün formatta olmaması, hesaplamalar ve analizler açısından büyük sorunlar yaratabilir. Örneğin, tarih ve saat verilerinin yanlış formatta olması, analizlerde karışıklığa yol açar. Bu hataları nasıl düzeltebileceğimize değineceğiz.
Python'da Pandas ve Numpy ile Veri Temizleme Teknikleri
İşte, bu kütüphanelerle yapabileceğiniz bazı veri temizleme işlemleri:
kopyala# Eksik veri kontrolü ve silme import pandas as pd data = pd.read_csv('veri.csv') data = data.dropna() # Eksik verileri silme # Duplikatları temizleme data = data.drop_duplicates() # Format düzeltme data['tarih'] = pd.to_datetime(data['tarih'], errors='coerce')
Bu basit adımlar, verinizi temizlemek ve düzgün hale getirmek için ilk adımdır. Ancak, veri temizleme süreci sadece bunlarla sınırlı değildir. Şimdi, daha ileri seviye tekniklere göz atalım.
İleri Düzey Veri Temizleme Yöntemleri
1. Metin Verisi Temizleme: Metin verileriyle çalışırken, gereksiz boşlukları, özel karakterleri ve stop word'leri temizlemek önemlidir. Bu tür verileri nasıl işleyebileceğimizi görmek için Pandas ve regex kullanarak örnekler üzerinden ilerleyeceğiz.
2. Outlier Analizi: Outlier (aykırı değerler) verilerin içinde bazen doğal olmayan ve analizi bozan sonuçlara yol açabilir. Bunları tespit etmek ve analizlerden çıkarmak, veriyi daha güvenilir hale getirebilir.
kopyala# Aykırı değer tespiti import numpy as np import matplotlib.pyplot as plt data = pd.read_csv('veri.csv') q1 = data['sütun'].quantile(0.25) q3 = data['sütun'].quantile(0.75) iqr = q3 - q1 outlier_low = q1 - 1.5 * iqr outlier_high = q3 + 1.5 * iqr outliers = data[(data['sütun'] < outlier_low) | (data['sütun'] > outlier_high)] plt.boxplot(data['sütun']) plt.show()
Otomatikleştirilmiş Veri Temizleme Sistemleri ve Araçları
- Great Expectations: Veri kalitesini test etmek için harika bir araçtır. Otomatik olarak veri setinizin kalite kontrolünü yapabilir ve hataları raporlayabilir.
- Pyjanitor: Pandas için geliştirilmiş bir temizleme kütüphanesidir. Veri setinizi hızlı bir şekilde temizlemek ve dönüştürmek için kullanabilirsiniz.
Gerçek Hayat Projelerinden Örnekler
Benzer şekilde, e-ticaret sitelerinde ürün verilerinin temizlenmesi de kritik bir rol oynar. Yanlış fiyatlandırma, eksik stok bilgisi ve hatalı kategori etiketleri, müşteri deneyimini doğrudan etkileyebilir. Bu tür verileri temizlemek ve düzenlemek, sitenizin performansını artırabilir.
Ayrıca, sağlık sektöründe hasta verileriyle çalışırken, kişisel bilgilerin doğru şekilde işlenmesi gerekir. Veri temizleme, doğru sonuçlar elde etmenin yanı sıra, kullanıcı gizliliği ve güvenliği açısından da önemlidir.
###