Python'da CSV Dosyaları Nasıl Ayrıştırılır

Yorumlar: 0

Veri ayrıştırma, genellikle CSV dosyaları durumunda kullanılan bilgilerin otomatik olarak toplanması ve işlenmesi olarak tanımlanır. Burada ayrıştırma, CSV dosyalarının satırlara, sütunlara ve değerlere dilimlenmesi anlamına gelir. Bunu yaparken, veriler analiz edilebilir, filtrelenebilir ve daha fazla çalışma için zahmetsizce çıkarılabilir. Bu makalede csv dosyalarını okumak için Python'un nasıl kullanılacağını açıklayacağız. Ek olarak, Python'da bir CSV dosyasından verilerin nasıl ayrıştırılacağını göstereceğiz.

CSV Dosyası Nedir?

CSV veya (Virgülle Ayrılmış Değerler), verileri virgül ve yeni satır kaydırmalarıyla ayrılmış değerlere sahip olacak şekilde kaydeden bir dosya formatıdır. Bu nedenle CSV formatı, Excel'de veri oluşturmak veya değiştirmek gibi çeşitli bağlamlarda kullanılabilir.

CSV dosyalarının en güçlü yanlarından biri bilgiye erişim ve paylaşım kolaylığıdır. Benzersizliği, kullanılan yazılımdan bağımsız olarak dosyanın açılmasına ve işlenmesine izin verir. Bu, bu tür verilerin bir elektronik tablo veya bir veritabanı biçiminde dışa aktarılmasını kolaylaştırır.

Şimdi aşağıdaki blokta Python'da CSV'nin nasıl açılacağını ve okunacağını gösterelim.

Python ile CSV Dosyalarını Ayrıştırma

Python, verileri kolaylıkla okuyabilen ve yazabilen yerleşik bir CSV kütüphanesine sahiptir. Harici kütüphaneler yüklemek gerekli değildir, bu da içeriği analiz etmeyi ve dosyaları açmayı bu kadar kolay bir iş haline getirir.

Aşağıdaki kod parçaları Python'da university_records adlı bir СSV dosyasının nasıl açılacağını ve yazdırılacağını göstermektedir. Dosyayı açmak için okuma modunu kullanır ve ardından CSV dosyasını okur, son olarak verileri bir for döngüsü ile yazdırır.


import csv

with open('university_records.csv', 'r') as csv_file:
    reader = csv.reader(csv_file)

    for row in reader:
        print(row)

Python ile CSV Dosyaları Yazmak

Bu amaçla, veri yazmak için CSV modülünü kullanacağız. CSV modülüne bilgi yazarken size yardımcı olacak faydalı yöntemler vardır:

  • .writer() - bir dosya oluşturma aracı olarak hizmet eder;
  • .writerow() - verileri bir satırda depolar.

Modülün yöntemleri aşağıdaki kodda kapsamlı bir şekilde gösterilmiştir:


import csv

row = ['David', 'MCE', '3', '7.8']

row1 = ['Monika', 'PIE', '3', '9.1']

row2 = ['Raymond', 'ECE', '2', '8.5']

with open('university_records.csv', 'a') as csv_file:
    writer = csv.writer(csv_file)

    writer.writerow(row)

    writer.writerow(row1)

    writer.writerow(row2)

Pandas Kütüphanesi ile CSV Ayrıştırma

CSV dosyalarını ayrıştırmak için python kullanmak günümüzde çok önemlidir: finans için elektronik tablolardan makine öğrenimi için devasa veritabanlarına kadar. Bazen bu dosyalarla çalışmak, özellikle de Python'un kutudan çıkardığından daha fazla özelliğe ihtiyaç duyduğunuzda bir acıdır. Bu gibi durumlarda Pandas kütüphanesi kullanışlı olabilir.

DataFrame ile veri yazmanın tam kapasitesi aşağıda gösterilmiştir. DataFrame, Pandas kütüphanesindeki ana veri yapılarından biridir ve tablo şeklindeki verilerle çalışmak için kullanılır.


import pandas as pd

data = {"Name": ["David", "Monika", "Raymond"], 
        "Age": [30, 25, 40], 
        "City": ["Kyiv", "Lviv", "Odesa"]
} 

df = pd.DataFrame(data) 

file_path = "data.csv" 
df.to_csv(file_path, index=False, encoding="utf-8")



Pandas Kütüphanesinin Temel Özellikleri

Python için Pandas kütüphanesi CSV'yi ayrıştırmak için en etkili kütüphanelerden biri olarak kabul edilir ve işte bu kadar güçlü ve kullanışlı olmasının nedenleri:

  1. Basit dosya yükleme. Bir veri kümesi birden fazla kaynaktan geliyorsa ve biçimlendirmesinde tutarsızlık varsa, Pandas, manuel çabayı ortadan kaldırarak dosyayı otomatik olarak ayrıştırdığı için büyülü olduğunu kanıtlıyor.
  2. Ölçeklenebilirlik. Standart Python kütüphaneleri büyük hacimli CSV dosyalarını ayrıştırmaya çalıştığında, genellikle çok gecikirler, ancak Pandas ile optimizasyon yapılır, çünkü daha büyük dosyalarla iyi performans göstermede koz olarak kullanılır. Ayrıca, dosya yüklemesinin parçalanması, aşırı bellek yüklenmesinin önlenmesini sağlar.
  3. Çeşitli işlemlerle başa çıkma: CSV dosyalarında eksik değerler, yanlış formatlar ve kopyalar bulunur. İyi ki Pandas, eksik veri ve tür değiştirme, karakter temizleme ve gelişmiş analiz için bilgi yeniden yapılandırma gibi yerleşik araçlarla bu sihri bir kez daha kanıtlıyor.

Bu özellikler, kütüphanenin CSV dosyalarını hızlı bir şekilde analiz etmek için en iyisi olduğunu göstermektedir, çünkü diğer araçlar karşılaştırıldığında sınırlıdır. Aynı zamanda, büyük miktarlarda veriyi işleyebilmesi onu bilgi dünyasında son derece kullanışlı kılmaktadır.

Pandas ile CSV Dosyalarını Okuma

CSV belgesini kullanabilmeniz için ilk adım onu yüklemektir.


import pandas as pd

df = pd.read_csv("data.csv")

Kapsamlı veri kümeleriyle uğraşırken Pandas araçları kullanıma uygundur. Bir Python betiğinin bir CSV dosyasını nasıl ayrıştırabileceğini inceleyelim.


df.head() # İlk 5 satırı gösterir
df.tail(10) # Son 10 satırı gösterir
df.info() # Sütunların, veri türlerinin ve doldurulan değerlerin sayısının bir listesini çıkarır

Bir veya birden fazla sütun seçmek için, execute:


df["Name"] # "Name" sütununu alın


df[["Name", "Age"]] # Yalnızca "Name" ve "Age" çıkarın

Pandas ile CSV Dosyaları Yazma

Şimdi belirli satırların nasıl ekleneceğine, değiştirileceğine ve kaldırılacağına bakalım.

Yeni bir satır ekleniyor:


# CSV dosyasını yükleyin
df = pd.read_csv(file_path) 

# Yeni bir satır ekleme
new_row = pd.DataFrame([{"Name": "Denys", "Age": 35, "City": "Kharkiv"}]) df = pd.concat([df, new_row], ignore_index=True) 


# Kaydet
df.to_csv(file_path, index=False, encoding="utf-8")

Belirli bir satırın değiştirilmesi:


df = pd.read_csv(file_path) 

# Ivan'ın yaşını değiştirin
df.loc[df["Name"] == "Ivan", "Age"] = 26 

df.to_csv(file_path, index=False, encoding="utf-8")

Bir satır kaldırılıyor:


df = pd.read_csv(file_path) 

# Name == "Mykhailo" olan satırı kaldırın 
df = df[df["Name"] != "Mykhailo"] 

df.to_csv(file_path, index=False, encoding="utf-8")

Sonuç

Özetle, bu makalede Python'da bir CSV dosyasının nasıl açılacağını ve okunacağını gösterdik. Ancak bir kullanıcı daha fazla doğruluk ve güçlü yorumlama araçlarına ihtiyaç duyduğunda, Pandas mükemmel bir şekilde çalışır. Tekrarlayan işlemleri otomatikleştiren, büyük dosyaların işlenmesine izin veren ve zamandan tasarruf sağlayan bu kütüphane çok etkilidir. Bu nedenle, temel işlevler için standart CSV kütüphanesinin gereksinimleri karşıladığı, Pandas'ın ise kapsamlı bilgi verileriyle başa çıkmak için yapıldığı sonucuna varılabilir.

Yorumlar:

0 yorumlar