Mengedit file CSV agar tidak merusak data



Produk HFLabs dalam volume industri memproses data: alamat, nama lengkap, detail perusahaan, dan bahkan kereta total. Secara alami, penguji menangani data ini setiap hari: perbarui kasus uji, pelajari hasil pembersihan. Seringkali, pelanggan memberikan basis β€œlangsung” kepada tester untuk mengonfigurasi layanan untuknya.

Hal pertama yang kami ajarkan QA baru adalah menyimpan data dalam bentuk aslinya. Semua sesuai dengan perjanjian: "Jangan membahayakan." Dalam artikel ini, saya akan menunjukkan kepada Anda bagaimana bekerja dengan hati-hati dengan file CSV di Excel dan Open Office. Kiat akan membantu untuk tidak merusak apa pun, menyimpan informasi setelah diedit dan umumnya merasa lebih percaya diri.

Materi dasar, profesional pasti akan bosan.

Apa itu file CSV?


Format CSV digunakan untuk menyimpan tabel dalam file teks. Data sering dimasukkan ke dalam tabel, jadi file CSV sangat populer.


File CSV terdiri dari baris data dan pembatas yang menunjukkan batas kolom

CSV singkatan dari nilai yang dipisahkan koma - "nilai yang dipisahkan oleh koma." Tapi jangan tertipu dengan namanya: baik titik koma dan tab dapat berfungsi sebagai pemisah kolom dalam file CSV. Itu masih berupa file CSV.

CSV memiliki banyak keunggulan dibandingkan format Excel yang sama: file teks sederhana seperti tombol, buka dengan cepat, baca di perangkat apa pun dan di lingkungan apa pun tanpa alat tambahan.

Karena kelebihannya, CSV adalah format pertukaran data yang sangat populer, walaupun sudah berusia 40 tahun, CSV menggunakan aplikasi industri, mereka mengunduh data dari basis data ke dalamnya.

Satu masalah - editor teks untuk bekerja dengan CSV tidak cukup. Namun, jika tabelnya sederhana: di bidang pertama ID memiliki panjang yang sama, di kedua tanggalnya memiliki format yang sama, dan di ketiga ada beberapa alamat. Tetapi ketika bidang yang berbeda panjang dan ada lebih dari tiga, siksaan dimulai.


Pantau pembagi dan kolom - mata Anda pecah

Lebih buruk lagi dengan analisis data - coba Notepad untuk setidaknya menambahkan semua angka dalam kolom. Saya tidak berbicara tentang grafis yang indah.

Oleh karena itu, file CSV dianalisis dan diedit dalam Excel dan analognya: Open Office , LibreOffice , dan lainnya.

Untuk para veteran yang membaca: kawan-kawan, kami tahu tentang analisis langsung dalam database menggunakan SQL, kami tahu tentang Tableau dan Talend Open Studio . Artikel ini untuk pemula, tetapi pada tingkat dasar dan sejumlah kecil data Excel dengan analog sudah cukup.

Bagaimana Excel mengacaukan data: dari klasik


Semua akan baik-baik saja, tetapi Excel, nyaris tidak membuka file CSV, memulai trik liciknya. Dia mengubah data tanpa permintaan sehingga menjadi tidak berharga. Dan dia melakukannya sepenuhnya tanpa disadari. Karena itu, pada suatu waktu kami mengambil banyak masalah.

Sebagian besar insiden disebabkan oleh fakta bahwa program mengubah string dengan serangkaian angka menjadi angka tanpa permintaan.

Membulatkan. Misalnya, dalam sel asli, dua ponsel disimpan dipisahkan oleh koma tanpa spasi: "5235834.5235835". Apa yang akan dilakukan Excel? Konversi angka dengan terkenal menjadi satu angka dan putaran menjadi dua tempat desimal: "5235834.52". Jadi kita kehilangan ponsel kedua.

Mengarah ke bentuk eksponensial. Excel dengan hati-hati mengonversi "123456789012345" ke angka "1,2E + 15". Kami kehilangan nilai asli sepenuhnya.

Masalahnya relevan untuk panjang, karakter lima belas, garis numerik. Misalnya, kode CLADR (ini adalah pengenal status dari objek alamat: kota, jalan, rumah).

Menghapus keunggulan terkemuka. Excel percaya bahwa nilai tambah di awal garis dengan angka adalah karakter yang sama sekali berlebihan. Suka, dan sangat jelas bahwa angkanya positif, karena tidak ada minus di depannya. Oleh karena itu, nilai tambah terdepan dalam angka "+74955235834" akan dibuang sebagai tidak perlu - itu akan berubah menjadi "74955235834". (Pada kenyataannya, jumlahnya akan lebih menderita, tetapi untuk kejelasan, saya akan cocok dengan plus).

Hilangnya nilai plus sangat penting, misalnya, jika data masuk ke sistem pihak ketiga, dan yang satu memeriksa dengan kaku format saat mengimpor.

Memecah tiga digit. Excel adalah jiwa yang baik yang akan mengurai string digital yang lebih panjang dari tiga karakter. Misalnya, "8 495 5235834" akan berubah menjadi "84 955 235 834".

Memformat penting setidaknya untuk nomor telepon: spasi kode negara dan kota yang terpisah dari sisa nomor dan dari satu sama lain. Excel dengan mudah melanggar pembagian telepon yang benar.

Menghapus nol di depan. Excel akan mengubah string "00523446" menjadi "523446".
Dan dalam TIN, misalnya, dua digit pertama adalah kode wilayah. Untuk Republik Altai, itu dimulai dari awal - β€œ04”. Tanpa nol, arti angka akan terdistorsi, dan pemeriksaan format INN tidak akan lulus sama sekali.

Mengubah tanggal ke pengaturan lokal. Excel dengan senang hati akan memperbaiki nomor rumah "1/2" menjadi "01. Februari" Karena Windows menyarankan bahwa dalam formulir ini, lebih mudah bagi Anda untuk membaca tanggal.

Kami mengalahkan korupsi data dengan impor yang tepat


Tapi serius, Excel tidak bisa disalahkan atas masalah, tetapi cara yang tidak jelas untuk mengimpor data ke dalam program.

Secara default, Excel menerapkan tipe umum ke data dalam file CSV yang diunduh - tipe umum. Karena itu, program ini mengenali string digital sebagai angka. Pesanan ini dapat dikalahkan dengan menggunakan alat impor bawaan.

Saya memulai mekanisme impor bawaan di Excel. Dalam menu itu adalah "Data β†’ Dapatkan Data Eksternal β†’ Dari Teks".

Saya memilih file CSV dengan data, dialog terbuka. Dalam dialog, saya klik pada tipe file Delimited (delimited). Pengkodean - yang ada di file biasanya ditentukan secara otomatis. Jika baris pertama file adalah tajuk, saya menandai "My Data Has Headers".

Saya lolos ke langkah kedua dialog. Saya memilih pemisah bidang (biasanya titik koma - titik koma). Saya mematikan "Perlakukan pembatas berurutan sebagai satu", dan atur "Kualifikasi teks" menjadi "{tidak ada}". (Kualifikasi teks adalah simbol dari awal dan akhir teks. Jika pemisah dalam CSV adalah koma, maka kualifikasi teks diperlukan untuk membedakan koma di dalam teks dari koma pemisah.)

Pada langkah ketiga, saya memilih format bidang , untuk itu semuanya dimulai. Untuk semua kolom saya mengatur tipe ke "Teks". Omong-omong, jika Anda mengklik kolom pertama, tahan shift dan klik yang terakhir, semua kolom akan disorot sekaligus. Dengan nyaman.

Selanjutnya, Excel akan bertanya ke mana harus menempelkan data dari CSV - Anda cukup mengklik "OK", dan data akan muncul dalam lembar terbuka.


Anda harus membuat buku kerja baru di Excel sebelum mengimpor

Tapi! Jika saya berencana untuk menambahkan data ke CSV melalui Excel, ada hal lain yang harus dilakukan.

Setelah impor, perlu untuk memaksa semua-semua sel pada lembar ke format "Teks". Jika tidak, bidang baru akan mendapatkan tipe umum yang sama.

  • Saya menekan Ctrl + A dua kali, Excel memilih semua sel di lembar;
  • Saya mengklik tombol mouse kanan;
  • Saya memilih "Format Sel" di menu konteks;
  • dalam dialog yang terbuka, pilih tipe data teks di sebelah kiri.


Untuk memilih semua sel, Anda perlu menekan Ctrl + A dua kali. Tepat dua, ini bukan lelucon, cobalah

Setelah itu, dengan sedikit keberuntungan, Excel akan meninggalkan data asli sendirian. Tapi ini bukan jaminan tersulit, jadi setelah menyimpan, kami pasti akan memeriksa file melalui penampil teks.

Alternatif: Open Office Calc


Untuk bekerja dengan file CSV, saya menggunakan Calc. Bukannya itu tidak menganggap data digital sebagai string sama sekali, tetapi setidaknya tidak berlaku memformat ulang kepada mereka sesuai dengan pengaturan regional Windows. Ya, dan impor lebih sederhana.

Tentu saja, Anda akan memerlukan paket Open Office (OO). Selama instalasi, ia akan menawarkan untuk menetapkan kembali file MS Office untuk dirinya sendiri. Saya tidak merekomendasikan: meskipun OO cukup fungsional, ia tidak sepenuhnya memahami format rumit dokumen microsoft.

Tetapi untuk membuat OO program default untuk file CSV cukup masuk akal. Anda dapat melakukan ini setelah menginstal paket.

Jadi, kami mulai mengimpor data dari CSV. Setelah mengklik dua kali pada file, Open Office menampilkan dialog.


Perhatikan bahwa di OO Anda tidak perlu membuat buku kerja baru dan memaksa impor untuk memulai, dengan sendirinya

  1. Pengkodean - seperti dalam file.
  2. "Pemisah" adalah titik koma. Wajar jika justru pemisah dalam file tersebut.
  3. "Pemisah teks" - kosong (semua sama seperti di Excel).
  4. Di bagian "Bidang", saya klik di kotak di kiri atas tabel, semua kolom disorot. Saya menunjukkan jenis "Teks".

Suatu hal yang merusak banyak darah: jika Anda secara keliru memilih beberapa pemisah bidang atau teks yang salah dibagi, file mungkin terbuka dengan benar, tetapi mungkin disimpan secara tidak benar.

Selain Calc, libreOffice sangat populer di HFLabs, terutama di Linux. Keduanya digunakan lebih aktif untuk CSV daripada Excel.

Track bonus: masalah saat menyimpan dari Calc ke .xlsx


Jika Anda menyimpan data dari format Calc ke Excel .xlsx, perlu diingat - OO terkadang tidak dapat dijelaskan dan dalam skala besar kehilangan data.


Limbah putih di tengah penuh dengan data dalam file CSV asli

Karena itu, setelah menyimpan, saya membuka file lagi dan memastikan bahwa datanya sudah ada.

Jika ada yang hilang, pengobatannya adalah menyimpan dari CSV ke .xlsx. Atau, jika Windows diinstal, impor dari CSV ke Excel dan simpan dari sana.

Setelah menyimpan ulang, saya pasti akan memeriksa sekali lagi bahwa semua data sudah ada dan tidak ada garis kosong tambahan.

Jika Anda tertarik bekerja dengan data, lihat lowongan kami . HFLabs hampir selalu membutuhkan analis, penguji, insinyur implementasi, pengembang. Kami akan memberikan data sehingga sepertinya kecil :)

Source: https://habr.com/ru/post/id432906/


All Articles