Data cleaning: nilai yang tiada, konflik dan pendua

Oleh Ai Flowi · Diterbitkan

Data cleaning, atau pembersihan data, mengenal pasti dan menyelesaikan kecacatan set data menggunakan peraturan yang jelas sambil mengekalkan bukti yang mencukupi untuk menerangkan setiap perubahan. Proses ini merangkumi nilai yang tiada, perwakilan yang tidak konsisten, julat yang tidak sah dan rekod pendua. Nilai yang kelihatan luar biasa tidak secara automatik salah, dan konflik yang belum diselesaikan perlu kekal jelas, bukannya digantikan dengan tekaan.

Tentukan kontrak sebelum mengubah nilai

Mulakan dengan maksud setiap medan, perwakilan yang diterima dan status ketiadaan yang dibenarkan. Rentetan kosong, medan yang tidak disertakan dan null yang dinyatakan secara jelas boleh mempunyai maksud berbeza. Nilai sifar literal boleh menjadi data yang sah. Menggantikan setiap ketiadaan dengan sifar memudahkan pengiraan jadual, tetapi boleh mengubah soalan yang dijawabnya.

Simpan salinan mentah yang tidak boleh diubah dan rujukan baris sumber yang stabil. Simpan keputusan pembersihan dalam lejar berasingan: medan terjejas, nilai asal, nilai cadangan, versi peraturan dan status pengendalian. Pembetulan bermaksud peraturan membekalkan pengganti yang berjustifikasi. Kuarantin bermaksud rekod tidak boleh dimasukkan ke dalam set data yang diterima. Soalan yang belum diselesaikan bermaksud lebih banyak bukti diperlukan, bukannya nilai munasabah telah ditemui.

Penyeragaman perlu mengikuti maksud. Ruang kosong mungkin tidak penting di sekeliling kod tetapi bermakna dalam teks petikan. Sifar di hadapan mungkin mengenal pasti barang. Label unit berbeza memerlukan peraturan penukaran yang jelas sebelum nombor boleh dibandingkan. Keselarasan format sahaja bukan ketepatan semantik.

Daftar isu rekaan dan lejar keputusan

Semua rekod di bawah ialah sintetik. Keputusan yang dicadangkan menggambarkan dasar, bukan hasil pembersihan yang diperhatikan. Katakan sebuah makmal membekalkan ukuran sampel. Kontrak yang diisytiharkan menerima suhu dari 0 hingga 40 darjah Celsius, tarikh yang ditulis tanpa kekaburan dan ID sampel sebagai teks. Julat itu hanya terpakai pada set data rekaan ini. Medan yang tidak ditunjukkan dalam daftar isu memenuhi kontrak.

Sebelum, selepas yang dicadangkan dan keputusan belum selesai
Rekod / isuSebelumSelepas yang dicadangkanBukti keputusan
A: tarikh kosongdate=””Nilai kosong mentah dikekalkan; tarikh belum dipastikan.Kuarantin sehingga tarikh yang diperlukan dibekalkan.
B: tarikh tidak disertakanTiada medan date.Status medan tiada dikekalkan.Kuarantin; bezakan medan yang tidak disertakan daripada nilai kosong A.
C: unit dibekalkansample_id=” 0017 “; temperature=293.15 Ksample_id=”0017″; temperature=20 °CBuang ruang pada kedua-dua hujung berdasarkan dasar kod; tukar Kelvin dengan menolak 273.15, sambil mengekalkan nilai mentah.
D: ID bercanggahsample_id=”0022″; temperature=18 °CTiada penggantian automatik.Tahan bersama E: satu ID mempunyai ukuran yang tidak serasi.
E: ID bercanggahsample_id=”0022″; temperature=27 °CTiada penggantian automatik.Tanya sama ada ini pemerhatian berasingan atau pembetulan.
F: tarikh kaburdate=”03/04/2026″Belum dipastikan; kekalkan teks yang dibekalkan.Tetapan setempat tidak dinyatakan, maka hari dan bulan tidak boleh dipilih dengan selamat.
G: pelanggaran kontraktemperature=-5 °CNilai mentah dikekalkan di luar output yang diterima.Kuarantin berdasarkan julat yang diisytiharkan; jangan dakwa bahawa nilai itu mustahil secara fizikal.
H: pengulangan tepatSemua medan yang dibekalkan sama dengan rekod mentah C.Hubungan pendua dengan C.Kecualikan hanya berdasarkan peraturan jelas dasar ini yang menetapkan satu rekod bagi setiap pemerhatian sumber.

Selepas menerapkan dasar contoh ini, C ialah satu-satunya calon yang diterima, H ialah satu pendua yang didokumenkan dan enam baris kekal dikuarantin. Kesemua lapan baris input masih diambil kira. Kiraan ini ialah hasil pengiraan untuk pengajaran, bukan kadar lulus dalam persekitaran pengeluaran. Jika bukti kemudian membebaskan baris yang dikuarantin, kemas kini sejarah keputusannya, bukannya menulis semula salinan keadaan asal.

Apakah perbezaan antara pendua dengan pengaitan rekod dalam pembersihan data?

Pembuangan pendua tepat membandingkan nilai yang dipilih oleh peraturan penyahduplikasian. Tentukan dahulu sama ada nilai sama yang berulang mewakili peristiwa berulang atau salinan berulang bagi satu peristiwa. Dua pemerhatian sah boleh mempunyai ukuran yang sama; kesamaan sahaja tidak memberi kebenaran untuk memadamkan rekod.

ID pendua dengan nilai berbeza memerlukan dasar konflik. Mengekalkan baris terkini hanya berjustifikasi apabila cap masa dan autoriti sumber menyokong peraturan itu. Jika cap masa menerangkan penerimaan data, bukannya pemerhatian asal, cap masa mungkin tidak memberi asas untuk memilih ukuran yang betul.

Pengaitan rekod menanyakan sama ada rekod berbeza menerangkan perkara dunia sebenar yang sama. Nama yang serupa atau alamat berdekatan ialah bukti untuk disemak, bukan pengesahan. Asingkan padanan calon daripada penggabungan yang diterima, dan simpan rekod sumber yang menyumbang kepada rekod gabungan. Membatalkan penggabungan yang salah jauh lebih sukar selepas maklumat asal usul dibuang.

Peraturan deterministik dan cadangan AI

Gunakan peraturan jelas untuk penukaran unit yang diketahui, medan wajib dan perwakilan yang dibenarkan. Model AI mungkin mencadangkan pentafsiran teks bebas yang tidak konsisten, tetapi cadangan memerlukan bukti sumber sokongan dan semakan. Penjelasan yang lancar tidak menentukan rekod D atau E yang betul.

Pengesanan pencilan menandakan rekod untuk disiasat. Pengesanan itu tidak membuktikan bahawa rekod patut dipadamkan. Jika set data digunakan untuk pembelajaran mesin, pelajari parameter imputasi atau penskalaan daripada bahagian latihan dan terapkan dasar yang dipilih pada data yang diasingkan untuk penilaian; menggunakan nilai data penilaian untuk menentukan parameter transformasi akan membocorkan maklumat penilaian.

Excel, Python dan alat pemprosesan jadual semuanya boleh melaksanakan dasar pembersihan. Pilihan alat kurang penting berbanding mengekalkan nilai mentah, mendokumenkan maksud medan dan memastikan keputusan boleh diulang. Alat pembaikan sintaks menangani perwakilan data; alat itu tidak boleh menyelesaikan ukuran yang bercanggah.

Komponen katalog untuk kerja pembersihan

Rujuk entri katalog Table Operations untuk antara muka yang digunakan dalam percubaan pembersihan satu lajur di bawah.

Eksport tidak menyatakan subset atau dasar pengekalan bagi "Drop Duplicates". Sebelum menggunakan pilihan itu pada H, tentukan sama ada perbandingan menggunakan medan mentah, medan yang disemak atau lajur terpilih: C dan H mungkin berbeza dalam perbandingan selepas penukaran unit C. Simpan hubungan sumbernya secara bebas daripada sebarang operasi jadual. Gunakan Data → DataFrame untuk batas penukaran dan JSON Cleaner untuk pembaikan rentetan JSON.

Konfigurasi terhad dan outputnya

contoh konfigurasi, bukan ujian yang direkodkan

Sediakan Table ujian dengan kebenaran akses, nilai mentah dan rujukan sumber dalam ruang kerja AI Flowi Workflow. Tetapkan Table Operations.df kepada salinan kerja, operation kepada "Replace Value", column_name kepada sample_id, replace_value kepada " 0017 " dan replacement_value kepada "0017". Bandingkan Table yang terhasil dengan salinan mentah: percubaan ini berkaitan dengan kod yang dibekalkan dengan ruang tambahan, bukan peraturan umum pembuangan ruang kosong.

Periksa sama ada ID H yang sepadan turut berubah dan sama ada sel lain diubah. Kekalkan lajur suhu dan tarikh di luar percubaan penggantian ini. ID yang disemak tidak menukar Kelvin, menyelesaikan D dan E atau membekalkan tetapan setempat F yang tiada. Kekalkan setiap baris semasa menguji perubahan perwakilan; penerimaan dan pengecualian kekal sebagai keputusan berasingan dalam lejar.

Spesifikasi output pembersihan merangkumi baris yang diterima, baris yang dikuarantin dan hubungan pendua berserta sebab; satu langkah penggantian ini hanya menghasilkan Table untuk diperiksa. Tiada panggilan model atau penyedia luaran digunakan. Table Operations didokumenkan dalam katalog; belum diuji oleh Ai Flowi dalam persekitaran pengeluaran.

Semakan yang mencegah kehilangan data secara senyap

Tetapkan tepat satu status pengendalian akhir bagi setiap baris sumber: diterima, dikuarantin atau pendua yang dikecualikan. Semak bahawa jumlah kiraannya sama dengan kiraan input dan rujukan sumber tidak bertindih antara status pengendalian. Bandingkan juga nilai mentah, unit dan pautan konflik; jumlah yang betul boleh menyembunyikan penggantian baris yang salah.

Resipi pembersihan data prospek sedia ada melaporkan “lulus kesemua 32 kes” bagi permintaan khusus dalam persekitaran pengeluaran. Skopnya ialah pembersihan medan prospek dan penulisan helaian, dan kes penghantaran berulangnya menambah satu lagi baris. Hasil tersebut tidak mengesahkan dasar ukuran atau pengendalian konflik di atas. Gunakan kes penggunaan untuk skop resipi yang direkodkan dan ETL untuk batas pemuatan dan rekonsiliasi.