Bu rehber, zeka.org için yapay zekâ desteğiyle hazırlanmış editoryal içeriktir. Örnek alanlar kurmacadır; gerçek müşteri veya katılımcı bilgisi kullanılmaz.
“Veriyi temizle” demeden önce kuralı yaz
Bir CSV dosyasında aynı kişinin iki satırda görünmesi her zaman hata değildir. İki ayrı etkinliğe kaydolmuş olabilir. Boş şehir alanını tahmin ederek doldurmak da veriyi olduğundan daha güvenilir gösterir. Yapay zekâdan kod isterken önce hangi değişikliğe izin verdiğini tarif et.
Bu küçük örnekte üç sütun var: katilimci_kodu, sehir, etkinlik. Aynı katılımcı kodu ve aynı etkinlik birlikte tekrar ederse ilk satır tutuluyor. Kod biçimi U001 gibi olmalı. Yalnız İstanbul, Ankara ve İzmir tanınıyor. Başka şehirler “yanlış” diye değiştirilmek yerine inceleme için ayrılıyor. Bu dar sözlük bir eğitim örneği; Türkiye için genel bir şehir doğrulayıcısı değil.
Kullanılabilir bir görev tanımı
Python standart kütüphanesiyle noktalı virgülle ayrılmış bir CSV okuyucu yaz.
Sütunlar tam olarak: katilimci_kodu;sehir;etkinlik.
Baştaki ve sondaki boşlukları temizle. Kod U ve üç rakam biçiminde olsun.
Şehir sözlüğü yalnız İstanbul, Ankara, İzmir olsun; bilinmeyeni tahmin etme.
Etkinlik değerleri yalnız giriş veya atölye olsun.
Tekrar anahtarı katilimci_kodu + etkinlik. İlk geçerli satırı koru.
Geçersiz satırları nedenleriyle ayrı raporla. Girdi dosyasını değiştirme.
Girdi = kabul + tekrar + ayrılan eşitliğini doğrulayan test ekle.Ayırıcıyı elle parçalamak yerine CSV okuyucu kullan
Python’ın csv modülü, tırnakla çevrili alanları ve ayırıcıları CSV kurallarına göre okuyabilir. DictReader ilk satırdaki sütun adlarıyla sözlükler üretir; DictWriter belirlediğin sütun sırasıyla çıktı yazar. Dosyayla çalışırken belgelerde önerilen newline='' seçeneğini kullan. Kaynak: Python — csv
Örneğin tırnak içindeki “Ankara; İstanbul” tek alan olabilir. Metni her noktalı virgülde bölmek, alan sayısını yanlış yorumlar. Bunun dışında eksik sütun, fazla sütun ve beklenmeyen başlık sırasını da ayrı ayrı denemek gerekir.
Sonucu nasıl değerlendirirsin?
Bir örnek dosyayı önce elle hesapla. Altı satırın üçü kabul ediliyorsa, biri tekrar ve ikisi incelemeye ayrılıyorsa toplam yine altı olmalı. Ardından temizlenmiş çıktıyı aynı kuralla bir daha çalıştır: geçerli satırlar sebepsiz yere değişmemeli.
Küçük testin geçmesi her dosyanın desteklendiği anlamına gelmez. Dosyanın kodlaması, sütun düzeni veya iş kuralı değiştiğinde örnekleri de güncelle. Toplulukta yardım isterken gerçek kişisel kayıtlar yerine aynı sorunu gösteren küçük, kurmaca bir CSV paylaş.
Senin verinde bir satırı “tekrar” yapan anahtar hangisi? Aynı e-posta mı, sipariş numarası mı, yoksa birden çok alanın birleşimi mi?