Benim açımdan, bu soru iki aşamalı bir cevap için uygundur. İlk kısım, onu yumuşak ön işleme olarak adlandıralım, verileri daha sonraki analizler için uygun hale getirecek şekilde ön işleme için farklı veri madenciliği algoritmalarının kullanılması olarak alınabilir. Hedef, tek bir çekimde ele alınacak kadar basitse, bunun analizin kendisi olabileceğine dikkat edin.
İkinci kısım, zor ön işleme , aslında başka herhangi bir işlemden önce gelir ve işlenecek belirli içerikleri seçerek verileri temizlemek için basit araçların veya komut dosyalarının kullanımı olarak alınabilir. Bu problem için POSIX, özlü ve çok güçlü - ön işleme senaryoları oluşturmak için kullanılabilecek bir dizi sihirli araç sunar.
Örneğin, sosyal web sitelerinden (twitter, facebook, ...) gelen verilerle ilgilenen insanlar için veri alımı genellikle çok özel bir formatta dosyalar üretir - her zaman güzel bir yapı olmasa da, eksik alanlar içerebildiğinden, . Bu gibi durumlarda, basit bir awk
komut dosyası verileri temizleyerek daha sonraki işlemler için geçerli bir girdi dosyası oluşturabilir. Sihirli kümesinden, bir de işaret edebilir grep
, sed
, cut
, join
, paste
, sort
, ve diğer araçlar olan çok sayıda.
Basit olması durumunda, kaynak dosyada çok fazla nitty-gritties varsa, verileri temizlemek için bir yöntem paketi üretmek de gerekli olabilir. Bu gibi durumlarda, genellikle Python, Ruby ve Perl gibi betik dilleri (kabuk olanlar hariç) kullanmak daha iyidir. Bu, API'lerin oluşturulmasının belirli verileri çok basit ve tekrar kullanılabilir bir şekilde seçmesini sağlar. Bu tür API'ler bazen IMDbPY , Stack Exchange API ve diğerleri gibi yazarları tarafından kamuya duyurulur .
Öyleyse soruyu cevaplamak: En iyi uygulamalar var mı? Bu genellikle görevinize bağlıdır. Her zaman aynı veri biçimiyle ilgilenecekseniz, önceden işlemek için düzenli bir komut dosyası yazmak en iyisidir ; bazı veri kümelerinde basit ve hızlı bir temizleme işlemine ihtiyacınız varsa, tüm işi bir Python komut dosyasından çok daha hızlı yapacak özlü kabuk komut dosyaları için POSIX araçlarına güvenin . Yana temiz yukarı veri kümesi üzerinde ve amaçlarınıza de bağlıdır, her şeyi zaten bitmiş olması zor. Yine de, sorunla başa çıkabileceğiniz birçok API var.