- Saat data riset genetika diproses di spreadsheet, format otomatis Excel mengubah nama gen dan memicu kesalahan dalam makalah
- Jenis kesalahan ini ditemukan pada 1 dari 5 makalah genetika di jurnal sains papan atas, mengungkap kelemahan dalam proses verifikasi data
- Penyebab utamanya adalah nama gen otomatis diubah oleh Excel menjadi nilai tanggal atau angka, sehingga nilai yang dimasukkan berbeda dari nilai yang disimpan
- Singkatan seperti SEPT2 yang bisa ditafsirkan sebagai tanggal berubah menjadi
2-SEP, lalu dapat disimpan sebagai nilai tanggal seperti 2 September 2016 - Jika tetap menggunakan Excel, kolom harus diatur ke format teks dan hasilnya perlu diperiksa langsung; Google Sheets bisa menjadi alternatif untuk menghindari kesalahan konversi otomatis serupa
Kesalahan nama gen akibat format otomatis Excel
- Fitur format otomatis Microsoft Excel telah menimbulkan kesalahan pada data makalah genetika, dan analisis baru mengonfirmasi bahwa jenis kesalahan ini muncul dalam 1 dari 5 makalah genetika di jurnal sains papan atas
- Masalah terjadi ketika spreadsheet menafsirkan sebagian nama gen sebagai tanggal kalender atau nilai angka
- Pengguna merasa telah memasukkan nama gen, tetapi data yang tersimpan bisa berubah menjadi nilai lain
Contoh utama
- Gen Septin-2 sering disingkat sebagai SEPT2
- Excel mengubah SEPT2 menjadi
2-SEP, lalu dapat menyimpannya sebagai tanggal 2 September 2016 - Konversi semacam ini bisa menggoyahkan keandalan daftar gen atau data analisis yang dimasukkan ke dalam makalah
Cara menangani dan alternatif
- Jika tetap menggunakan Excel, kolom terkait harus ditetapkan ke format teks dan perlu diperiksa dengan cermat agar tidak terjadi konversi otomatis
- Google Sheets menyimpan nama gen persis seperti yang dimasukkan, sehingga bisa menjadi alternatif untuk menghindari jenis kesalahan konversi otomatis yang sama
- Analisis terkait dipublikasikan di Genome Biology
1 komentar
Komentar Hacker News
Excel yang otomatis mengonversi string yang tampak seperti notasi ilmiah menjadi angka itu benar-benar menjengkelkan. Tidak bisa dimatikan juga
Saat ekspor data berskala besar berisi nilai seperti kode lokasi unik, tiba-tiba sebagian terlihat aneh, dan ternyata bukan sekadar tampilannya yang berubah; isi selnya sendiri sudah diubah Excel tanpa bertanya
Tidak masuk akal bahwa setelah bertahun-tahun masalah kecil seperti ini, yang terus membuat orang tersandung, tidak juga diperbaiki. Microsoft biasanya bilang “kami hanya mengerjakan hal yang berdampak pada banyak pelanggan”, tetapi kalau laporan bug terus ditutup, mereka bisa selalu bilang “hanya berdampak pada satu orang” lalu menutupnya lagi
Semestinya ditangani dengan benar, misalnya kalau tidak bisa direproduksi, tambahkan debugging untuk lain kali, atau tinggalkan alasan yang bisa dilacak seperti “pemintanya sedikit, tetapi jika diubah bisa merusak area lain atau kompatibilitas mundur”
Banyak sekali makro, skrip VBA, dan alur kerja yang dibuat pengguna nonteknis bergantung secara halus pada perilaku seperti ini. Mirip dengan keanehan-keanehan JavaScript; kalau diubah, hal-hal lama di suatu tempat akan rusak
Microsoft mungkin bisa mengatakannya lebih langsung, tetapi tentu saja mereka ingin menghindari perdebatan seperti itu
Utas populer sebelumnya dari Agustus 2020: https://news.ycombinator.com/item?id=24070385
Isinya tentang “para ilmuwan mengubah nama gen manusia agar MS Excel tidak salah membaca nama gen sebagai tanggal”
Sebagai detail terkait, pada 2023 Microsoft merilis pembaruan yang mencegah masalah Excel mengonversi simbol gen menjadi tanggal, dan ada juga Gene Updater yang otomatis memperbaiki serta memperbarui nama gen yang salah dikenali Excel
https://www.pcmag.com/news/microsoft-finally-fixes-excel-gli...
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9325790/
Orang harus benar-benar memahami alatnya. Saat melihat judul seperti ini, saya sedih melihat keadaan dunia dan hambatan yang menghalangi kemajuan, marah pada kebodohan merancang semua alat demi pengguna paling malas, dan pada saat yang sama agak terhibur oleh kegagalan perangkat lunak proprietari dan para penggunanya
Alat yang dipakai bisa saja buruk. Kalau begitu, Anda harus menangani sendiri alat buruk itu, atau mempelajari alat yang lebih baik, atau membawa ahli komputer yang kompeten yang bisa menjelajahi ekosistem alat dan menghasilkan keluaran
Belum lagi soal validasi hasil. Di lingkungan riset yang didanai publik, membayar Microsoft untuk memakai alat proprietari lalu mengacaukannya adalah kondisi yang getir
Jadi seseorang di suatu titik dalam rantai—penulis korespondensi, editor, staf jurnal, dan sebagainya—membuka file itu dengan Excel lalu menyimpannya lagi. Bukan berarti para bioinformatikawan melakukan analisis dengan Excel
Salah satu alasan saya berhenti memakai spreadsheet untuk pendidikan adalah karena spreadsheet terus mempertahankan bug prioritas operasi aritmetika. Yang dimaksud “bug” di sini adalah bertentangan dengan konvensi matematika yang sudah lama berlaku
Jika memasukkan
-3^2ke dalam sel lalu menekan Enter, spreadsheet akan mengatakan hasilnya9. Namun dalam matematika, pemangkatan memiliki prioritas lebih tinggi daripada minus unary, jadi hasilnya seharusnya-9. Misalnya, jika siswa diminta menggambar grafiky = -x^2, mereka seharusnya menggambar parabola yang terbuka ke bawahSaya tidak bisa memeriksa Excel terbaru, tetapi di Excel 97 memang begitu, dan LibreOffice Calc saat ini juga mengembalikan
9. Mungkin salah satu spreadsheet awal salah mengimplementasikan prioritas, lalu semua yang lain mengikutinya demi kompatibilitasSebaliknya, maxima dan Python sama-sama memberi
-9. Saya penasaran apakah orang yang menyalin rumus dari buku matematika ke spreadsheet juga tersandung masalah ini^yang diciptakan. Dalam matematika, eksponen adalah superskrip, jadi bukan operator biner, melainkan bagian dari sukuDalam teks komputer, dibuatlah operator biner untuk sesuatu yang tidak bisa diekspresikan langsung; caret umum dipakai dan muncul paling awal, tetapi
**juga contoh lainSecara tradisional, minus unary terlihat sebagai bagian dari suku, sehingga prioritasnya lebih tinggi daripada operator biner. Namun ketika eksponen diubah menjadi operator sambil tetap mempertahankan logika itu, masalahnya jadi rumit
Masalah serupa terlihat pada pembagian.
/adalah operator biner yang dibuat di lingkungan yang tidak memiliki simbol pembagian sungguhan, dan pada dasarnya seharusnya mewakili garis horizontal pada pecahan. Garis pecahan berperan mengelompokkan seluruh ekspresi di kedua sisinya, tetapi jika ini sekadar diganti dengan/, hasilnya bisa salah karena terpengaruh aturan prioritas-a*bdi-parse sebagai(-a)*b, tetapic-a*bdi-parse sebagaic-(a*b). Minus unary memiliki prioritas lebih tinggi daripada operator binerBiasanya ini tidak disadari karena tanda bisa dipindahkan, tetapi dalam kasus batas yang terkait perilaku tak terdefinisi, hal ini bisa menjadi masalah
0 - INT_MIN/2di-parse sebagai0 - (INT_MIN / 2), jadi tidak apa-apa, tetapi-INT_MIN/2di-parse sebagai(-INT_MIN) / 2, jadi tidak aman. Karena sifat representasi komplemen dua,INT_MINbisa jadi tidak memiliki invers aditifSaya tahu ada dua konvensi untuk masalah ini, jadi untuk mendapatkan perilaku yang diinginkan saya cukup memakai tanda kurung
Semasa sekolah saya cukup jago matematika, tetapi saya tidak tahu ada orang yang berpikir
-3^2seharusnya menjadi-9; saya hanya menganggapnya sebagai sifat aneh pada beberapa kalkulator atau program. Saya juga penasaran bagaimana ekspresi ini dibaca dengan suara. Jika dianggap “kuadrat dari negatif 3”, maka(-3)^2terasa alami, dan hanya jika dibaca “negatif dari kuadrat 3” barulah-9benarSaat SMP, kami diajari memasukkan ekspresi seperti ini ke kalkulator untuk melihat hasil yang berbeda dari ekspektasi, dan setelah itu saya hanya berpikir, “berarti harus pakai tanda kurung.” Preferensi terhadap konvensi prioritas yang sedikit berbeda tidak sampai membuat saya membuang kalkulator atau menyuruh orang lain tidak memakainya
-2^2=4tetapi0-2^2=-4, karena kasus pertama dianggap sebagai unary-yang prioritasnya lebih tinggi daripada pemangkatanSecara teknis orang bisa berargumen itu benar, tetapi bagi orang dengan latar belakang teknik atau sains umum yang ingin melakukan pekerjaan biasa, ini sangat berlawanan dengan intuisi. Saya pikir ini bisa membuat banyak orang tidak jadi memakai Nim
POWER. Dari sudut pandang itu, meski secara matematis bisa salah, sebagai perilaku Excel saya rasa benarMasalah Excel adalah ia berusaha melakukan nyaris semuanya sebagai satu alat perangkat lunak: penyuntingan dan presentasi di sisi depan, analisis, pemodelan semantik, hingga penyimpanan data dan basis data
Kebanyakan engineer yang rasional melihat ada yang keliru dengan pendekatan semacam ini. Namun sebagian besar pengguna komputer sehari-hari menganggap komputasi memang seharusnya begitu
Kadang saya juga bertanya-tanya mengapa saya secara sukarela membuka Excel untuk tugas tertentu. Meski begitu, terlepas dari semua kritik, Excel bagi saya sudah melewati ambang efek Lindy dan akan tetap bertahan
https://en.wikipedia.org/wiki/Lindy_effect
Banyak startup teknologi pada dasarnya adalah “mengganti pekerjaan yang dulu dilakukan orang dengan Excel menjadi alat khusus”
Karena ia mengenai titik yang sempurna di antara data terstruktur dan tidak terstruktur, enak saja mengisi sel dan melihat apa yang terjadi
Alasan orang berkata “seharusnya tidak begitu” adalah karena jalan keluar dari solusi yang berjalan baik menuju pendekatan berbasis kode yang benar-benar diproduktisasi bisa sangat menyakitkan
http://www.catb.org/jargon/html/Z/Zawinskis-Law.html
Dalam bahasa Jerman ada pepatah, “pekerja yang buruk selalu menyalahkan alatnya.”
Excel memang punya banyak keanehan, tetapi saya tetap bersyukur ia ada karena memungkinkan kita mengumpulkan angka dengan cepat sekaligus tetap bisa mengubah nilai masukan rumus.
Setidaknya pada saat artikel itu ditulis, tidak ada cara untuk mematikan fitur yang otomatis mengubah string tertentu seperti
SEPT2menjadi tanggal. Kalau saja ada pengaturan untuk mematikannya, banyak kesalahan yang diperbesar oleh peneliti yang bekerja larut malam atau dikejar tenggat bisa dicegah.Memang ada titik di mana pengguna alat harus berupaya mempelajari cara pakai terbaiknya. Namun di sisi pengembang juga, dengan sedikit usaha, kesalahan umum bisa dicegah dan waktu pengguna bisa dihemat banyak.
Bukan semua alat. Bukan alat yang dipaksakan karena standar industri atau kebiasaan yang usang, dan bukan pula alat bodoh yang sebetulnya tidak akan pernah dipakai kalau ada pilihan lain.
Excel juga bukan penemu spreadsheet. Kalau Excel tidak ada pun, orang akan memakai semacam penerus WhateverCalc pada masa itu, dan Excel hanya menambahkan hal-hal yang tidak perlu di atasnya.
https://simple.wikipedia.org/wiki/Spreadsheet
Kenapa sebenarnya pengenalan tanggal otomatis tidak bisa dimatikan? Cukup masukkan kotak centang di pengaturan agar saya sebagai pengguna bisa menyuruh Excel berhenti melakukan omong kosong seperti itu.
Adakah orang yang bisa berargumen tanpa terbantahkan bahwa ini harus selalu aktif?
Apa nilai bawaannya? Apakah nilai bawaan berbeda antarversi? Bagaimana menjaga konsistensi di komputer dan lingkungan instalasi yang berbeda? Bagaimana jika fitur itu benar-benar dibutuhkan secara spontan?
Saya teringat ekspor CSV. Sudah 10 tahun saya tidak memakai Windows, tetapi saya ingat bahwa untuk mengubah cara ekspor angka desimal, kita harus mengubah locale lalu me-reboot komputer. Melakukan hal seperti itu hanya demi mengubah satu pengaturan Excel itu gila. Menebar patch kotak centang ke mana-mana juga tidak jauh berbeda.
https://insider.microsoft365.com/en-us/blog/control-data-con...
Dua minggu lalu saya mengalami hal serupa di tempat kerja. Saat mengambil log file, saya menulis skrip
awkyang mengubah timestampHH:MM:SS.uuuuuumenjadi nanodetik sejak epoch agar bisa dibaca alat lain.Namun saya tidak tahu bahwa
awksecara internal memakai floating point untuk angka, dan fungsi konversinya salah membulatkan hasil sehingga analisis berikutnya rusak dengan cara yang sulit dipahami.Lebih parah lagi, masalah yang sama muncul lagi saat saya melihat-lihat data di Visidata, meski ada workaround mudah yang tidak saya ingat persis.
Di tempat kerja, saya beberapa kali mengalami Excel mengubah nilai input angka karena format locale yang berbeda, dan sering menghabiskan berjam-jam sampai menemukan bahwa penyebabnya adalah Excel.
Nilai seperti nomor identitas penduduk atau nomor telepon juga merupakan tipe yang sangat merepotkan bagi Excel. Padahal ini penggunaan yang jauh lebih umum daripada gen dan lebih dekat dengan use case standar Excel, tetapi tetap saja dirusak.
Bahkan pada 2024, membuka file CSV di Excel bukan pekerjaan sederhana yang cukup dengan klik dua kali, melainkan menjadi terlalu rumit. Program spreadsheet lain menangani file CSV dengan jauh lebih mudah.
Yang terburuk, Excel biasanya dipakai pengguna nonteknis, dan perilaku aneh seperti ini sering disalahpahami sehingga waktu terus terbuang berulang kali.
Meski begitu, biasanya itu karena saya tidak cukup baik memakai fitur proteksi dan penguncian. Saya juga tahu catatan penjelasan sering diabaikan.
Jadi untuk file bersama, saya hampir selalu menyediakan satu backup kosong sebagai titik awal, lalu menyediakan file terpisah yang benar-benar dipakai, dan itu sedikit meredakan masalah.
Tulisan tahun 2016 dengan topik sama, “Gene name errors are widespread in the scientific literature”, juga menarik.
https://genomebiology.biomedcentral.com/articles/10.1186/s13...
Menurut tulisan tersebut, masalah perangkat lunak Excel yang secara keliru mengubah simbol gen menjadi tanggal dan angka floating point pertama kali dideskripsikan pada 2004. Misalnya simbol gen seperti
SEPT2danMARCH1secara default masing-masing diubah menjadi2-Sepdan1-Mar.