Bu öğretici, Python’da birden çok CSV dosyasını Pandas DataFrame’ine verimli bir şekilde nasıl içe aktaracağınızı göstermektedir. Pandas temellerini, tek CSV dosyalarını okumayı, birden çok dosyayı içe aktarmayı ve son olarak bunları tek, birleştirilmiş bir DataFrame’e birleştirmeyi ele alacağız.
İçindekiler Tablosu
- Pandas Nedir?
- Tek Bir CSV Dosyası Okuma
- Birden Çok CSV Dosyası Okuma
- DataFrame’leri Birleştirme
- Potansiyel Hataları Ele Alma
1. Pandas Nedir?
Pandas, Python’ın veri bilimi ekosisteminde temel bir kütüphanedir. Yüksek performanslı, kullanımı kolay veri yapıları ve veri analizi araçları sağlar. Çekirdek veri yapısı, bir elektronik tabloya veya SQL tablosuna benzer iki boyutlu etiketlenmiş bir veri yapısı olan DataFrame’dir. Pandas, CSV dosyaları, Excel elektronik tabloları ve veritabanları dahil olmak üzere çeşitli kaynaklardan yapılandırılmış verilerle çalışmayı kolaylaştırır.
2. Tek Bir CSV Dosyası Okuma
Birden fazla dosyayla uğraşmadan önce, tek bir CSV dosyası okuyalım:
import pandas as pd
file_path = 'your_file.csv' # Dosya yolunuzu buraya yazın
df = pd.read_csv(file_path)
print(df.head())
Bu, Pandas’ı içe aktarır, dosya yolunu belirtir, pd.read_csv()
kullanarak CSV’yi okur ve df.head()
kullanarak ilk beş satırı görüntüler.
3. Birden Çok CSV Dosyası Okuma
Bir dizindeki birden çok CSV dosyasını okumak için glob
modülünü kullanıyoruz:
import pandas as pd
import glob
directory = 'path/to/your/csv/files/' # Dizininizi buraya yazın
csv_files = glob.glob(directory + '*.csv')
dfs = []
for file in csv_files:
try:
df = pd.read_csv(file)
dfs.append(df)
except pd.errors.EmptyDataError:
print(f"Uyarı: Boş dosya atlanıyor: {file}")
except pd.errors.ParserError:
print(f"Uyarı: Ayrıştırma hataları içeren dosya atlanıyor: {file}")
print(f"Okunan DataFrame sayısı: {len(dfs)}")
Bu kod, belirtilen dizindeki tüm CSV dosyalarını bulur, her birini bir DataFrame’e okur ve bir listeye ekler. try-except
bloğu, boş dosyalar veya ayrıştırma hataları gibi olası hataları ele alarak betiğin çökmesini önler.
4. DataFrame’leri Birleştirme
Son olarak, bireysel DataFrame’leri birleştiriyoruz:
combined_df = pd.concat(dfs, ignore_index=True)
print(combined_df.head())
combined_df.to_csv('combined_data.csv', index=False) #İsteğe bağlı: Yeni bir CSV'ye kaydetme
pd.concat(dfs, ignore_index=True)
, dfs
listesindeki tüm DataFrame’leri birleştirir. ignore_index=True
, temiz ve sürekli bir indeks için indeksi sıfırlar. İsteğe bağlı to_csv()
, sonucu kaydeder.
5. Potansiyel Hataları Ele Alma
Sağlam betikler sorunları önceden görür. Birden çok dosya okuma bölümünde gösterildiği gibi hata işleme eklemek çok önemlidir. Dizinin varlığını kontrol etmeyi ve farklı türdeki dosya okuma hatalarını (örneğin, yanlış ayırıcılar, eksik sütunlar) ele almayı düşünün. Bu, betiğinizin daha güvenilir ve beklenmedik hatalara daha az eğilimli olmasını sağlar.