Latar Belakang
Saya mengawasi input data dari literatur primer ke dalam database . Proses entri data rentan kesalahan, terutama karena pengguna harus menginterpretasikan desain eksperimental, mengekstrak data dari grafik dan tabel, dan mengubah hasil menjadi unit standar.
Data dimasukkan ke dalam database MySQL melalui antarmuka web. Lebih dari 10k titik data dari> 20 variabel,> 100 spesies, dan> 500 kutipan telah dimasukkan sejauh ini. Saya perlu menjalankan pemeriksaan kualitas tidak hanya data variabel, tetapi juga data yang terkandung dalam tabel pencarian, seperti spesies yang terkait dengan setiap titik data, lokasi penelitian, dll.
Entri data sedang berlangsung, jadi QA / QC perlu dijalankan sebentar-sebentar. Data belum dirilis secara publik, tetapi kami berencana untuk merilisnya dalam beberapa bulan ke depan.
Saat ini, QA / QC saya melibatkan tiga langkah:
- pengguna kedua memeriksa setiap titik data.
- periksa histogram secara visual setiap variabel untuk pencilan.
- pengguna melaporkan data yang dipertanyakan setelah hasil palsu diperoleh.
Pertanyaan
- Apakah ada pedoman yang dapat saya gunakan untuk mengembangkan prosedur QA / QC yang kuat untuk database ini?
- Langkah pertama adalah yang paling memakan waktu; Adakah yang bisa saya lakukan untuk menjadikan ini lebih efisien?
sumber
Jawaban:
Tanggapan ini berfokus pada pertanyaan kedua, tetapi dalam prosesnya sebagian jawaban untuk pertanyaan pertama (pedoman untuk prosedur QA / QC) akan muncul.
Sejauh ini, hal terbaik yang dapat Anda lakukan adalah memeriksa kualitas data pada saat entri dicoba. Pemeriksaan dan laporan pengguna padat karya dan karenanya harus dicadangkan untuk nanti dalam proses, selambat mungkin.
Berikut adalah beberapa prinsip, pedoman, dan saran, yang berasal dari pengalaman yang luas (dengan desain dan pembuatan banyak basis data yang sebanding dengan dan jauh lebih besar dari milik Anda). Mereka bukan aturan; Anda tidak harus mengikuti mereka untuk menjadi sukses dan efisien; tetapi mereka semua ada di sini untuk alasan yang sangat baik dan Anda harus berpikir keras untuk menyimpang dari mereka.
Pisahkan entri data dari semua aktivitas yang menuntut intelektual . Jangan meminta operator entri data secara bersamaan untuk memeriksa apa pun, menghitung apa pun, dll. Batasi pekerjaan mereka untuk membuat faksimili data yang dapat dibaca komputer, tidak lebih. Secara khusus, prinsip ini menyiratkan formulir entri data harus mencerminkan format di mana Anda awalnya mendapatkan data, bukan format di mana Anda berencana untuk menyimpan data. Relatif mudah untuk mengubah satu format ke format lain di lain waktu, tetapi proses yang rawan kesalahan untuk mencoba transformasi dengan cepat saat memasukkan data.
Buat jejak audit data : setiap kali sesuatu dilakukan pada data, mulai dari tahap entri data, dokumentasikan ini dan catat prosedur dengan cara yang membuatnya mudah untuk kembali dan memeriksa apa yang salah (karena semuanya akan salah). Pertimbangkan mengisi bidang untuk prangko waktu, pengidentifikasi operator entri data, pengidentifikasi sumber untuk data asli (seperti laporan dan nomor halaman mereka), dll. Penyimpanan murah, tetapi waktu untuk melacak kesalahan mahal.
Otomatiskan semuanya. Asumsikan setiap langkah harus diulang kembali (pada waktu yang paling buruk, menurut Hukum Murphy), dan rencanakan dengan tepat. Jangan mencoba menghemat waktu sekarang dengan melakukan beberapa "langkah sederhana" dengan tangan.
Secara khusus, buat dukungan untuk entri data : buat ujung depan untuk setiap tabel (bahkan spreadsheet dapat melakukannya dengan baik) yang menyediakan cara yang jelas, sederhana, seragam untuk mendapatkan data. Pada saat yang sama ujung depan harus menegakkan "bisnis Anda aturan: "yaitu, ia harus melakukan sebanyak mungkin pemeriksaan validitas sederhana. (Misalnya, pH harus antara 0 dan 14; jumlah harus positif.) Idealnya, gunakan DBMS untuk menegakkan pemeriksaan integritas relasional (misalnya, setiap spesies yang terkait dengan pengukuran benar-benar ada dalam database).
Hitung terus-menerus hal - hal dan periksa bahwa jumlah benar-benar setuju. Misalnya, jika sebuah penelitian seharusnya mengukur atribut 10 spesies, pastikan (segera setelah entri data selesai) bahwa 10 spesies benar-benar dilaporkan. Meskipun memeriksa jumlah sederhana dan tidak informatif, ini bagus untuk mendeteksi data yang digandakan dan dihilangkan.
Jika datanya berharga dan penting, pertimbangkan untuk secara independen memasukkan dua kali seluruh data . Ini berarti bahwa setiap item akan dimasukkan pada waktu yang berbeda oleh dua orang yang tidak berinteraksi. Ini adalah cara yang bagus untuk menangkap kesalahan ketik, data yang hilang, dan sebagainya. Pemeriksaan silang dapat sepenuhnya otomatis. Ini lebih cepat, lebih baik dalam menangkap kesalahan, dan lebih efisien daripada pengecekan manual ganda 100%. (Entri data "orang" dapat menyertakan perangkat seperti pemindai dengan OCR.)
Gunakan DBMS untuk menyimpan dan mengelola data. Spreadsheet bagus untuk mendukung entri data, tetapi dapatkan data Anda dari spreadsheet atau file teks dan masuk ke database nyata sesegera mungkin. Ini mencegah semua jenis kesalahan berbahaya sambil menambahkan banyak dukungan untuk pemeriksaan integritas data otomatis. Jika Anda harus, gunakan perangkat lunak statistik untuk penyimpanan dan manajemen data, tetapi pertimbangkanlah untuk menggunakan DBMS khusus: itu akan melakukan pekerjaan yang lebih baik.
Setelah semua data dimasukkan dan diperiksa secara otomatis, gambarlah : buat tabel yang diurutkan, histogram, sebar plot, dll., Dan lihat semuanya. Ini mudah diotomatisasi dengan paket statistik lengkap.
Jangan meminta orang untuk melakukan tugas berulang yang dapat dilakukan komputer . Komputer jauh lebih cepat dan lebih andal dalam hal ini. Biasakan menulis (dan mendokumentasikan) skrip kecil dan program kecil untuk melakukan tugas apa pun yang tidak dapat diselesaikan dengan segera. Ini akan menjadi bagian dari jejak audit Anda dan memungkinkan pekerjaan untuk diulang dengan mudah. Gunakan platform apa pun yang Anda sukai dan yang cocok untuk tugas itu. (Selama bertahun-tahun, tergantung pada apa yang tersedia, saya telah menggunakan berbagai platform seperti itu dan semuanya efektif dalam caranya, mulai dari program C dan Fortran melalui skrip AWK dan SED, skrip VBA untuk Excel dan Word, dan custom program yang ditulis untuk sistem basis data relasional, GIS, dan platform analisis statistik seperti R dan Stata.)
Jika Anda mengikuti sebagian besar pedoman ini, sekitar 50% -80% pekerjaan dalam memasukkan data ke dalam basis data akan menjadi desain basis data dan menulis skrip pendukung. Sudah lazim untuk mendapatkan 90% melalui proyek seperti itu dan kurang dari 50% selesai, namun masih selesai tepat waktu: setelah semuanya sudah diatur dan telah diuji, entri data dan pemeriksaan dapat sangat efisien.
sumber
DataOne menyediakan serangkaian praktik terbaik pengelolaan data yang bermanfaat yang dapat difilter menurut tag. Praktik terbaik yang ditandai dengan "kualitas", ditemukan di http://www.dataone.org/best-practices/quality , mengulangi dan memperluas banyak poin yang dibuat oleh @whuber. Berikut adalah daftar topik yang dibahas di sana (dalam urutan abjad):
sumber