Untuk edisi #rabuTableau minggu ini, gue mau bahas soal data preparation atau persiapan data. Meski beberapa bagian di thread ini spesifik untuk digunakan untuk Tableau, namun banyak poin yg bermaanfaat untuk analisis data juga kok.
Mari kita belajar ngolah data! 📊
Biar lebih paham, sebelum berkutat ke tools @tableau atau @tableaupublic , gue mau sharing dulu apa itu data preparation.
Lo bisa simak gimana prinsip-prinsip mengolah data supaya bisa digunakan dengan layak nantinya.
Proses data preparation itu termasuk tahapan penting. Tujuannya agar data yg kita punya reliable. Selain itu, data juga bisa dibikin lebih ringkas, biar nantinya kita ga pusing atau repot sendiri saat dikulik.
Biar lebih paham, coba perhatikan gambar di bawah ini:
Gambar nomor 1 adalah proses pengumpulan data.
Umumnya, data yang kita dapatkan itu berantakan. Apalagi kalau datanya dapat dari berbagai sumber.
Kalaupun tidak berantakan, kadang formatnya tidak sesuai dengan apa yang kita harapkan.
Mungkin sebagian punya pengalaman, ketika ngumpulin data, pasti puyeng dengan berantakannya data itu.
Problemnya macem-macem, umumnya adalah:
- datanya gak terstruktur rapi
- gak lengkap alias banyak NA
- gak konsisten
- banyak karakter gak jelas
- dst
Tentunya jika data tidak sesuai harapan atau berantakan, perlu dirapikan. Obviously.
Nah, gak perlu kaget saat kita bekerja sebagai analis atau sebagai data scientist, kebanyakan waktu habis untuk merapikan data itu sendiri.
Proses di preparation ini dinamakan data cleaning.
Apa yang harus di-cleaning ya itu tentu macam-macam. Gue coba kasih beberapa hal yang perlu di thread ini, terutama jika datanya mau dipakai buat bikin #dataviz di Tableau.
Tableau Public sebenarnya bisa menarik data dari berbagai jenis sumber. Salah satunya juga bisa connect ke Google Sheets.
Tapi, untuk panduan di sini contoh yg gue pake adalah kalau kita memilih menggunakan file csv.
Untuk cleaning tools-nya pakai apa? Sebenarnya di Tableau ada tapi harus yg langganan, tools itu namanya Tableau Prep.
Untuk versi yg free kita bisa gunakan tools eksternal seperti R, Python, atau bisa juga pakai Google Sheets.
Gue sendiri mix antara Google Sheets dan R.
Hal pertama yg dilakukan adalah memilih kolom yg diperlukan. Ambil kolom-kolom atau field yg dibutuhkan. Sisanya buang.
Selain itu, kolom-kolomnya dikasih nama dengan format yang jelas dan rapi. Kalau kolomnya masih alay, juga dirapiin lower / upper case-nya.
Pengalaman gue memang kadang data yg diambil memasukkan terlalu banyak informasi yg gak elok diolah buat data analyst.
Nantinya saat sudah dipilih, kita save ke CSV baru dengan kolom yg lebih ringkas.
Setelah kolom dipilih, jangan lupa untuk cek data type di data kita. Memang di Tableau sendiri mereka bisa menerka otomatis tipe data yg kita impor.
Tapi, kita juga perlu punya pegangan, karena kadang Tableau ga 100% akurat, dan nantinya kita bisa set manual di situ.
Jika sudah, jangan di save ke csv dulu. Tugas lo masih panjang lol. Lakukan cek data apakah bersih apa nggak.
Ceklist yg perlu dilakukan dalam data cleaning biasanya gini:
- Cari value yg hilang (NA / null)
- Cek outlier
- Temukan data duplikat
- Benerin format yg ga konsisten
Data hilang
Kita identifikasi lalu lakukan sesuatu ke value yg NA atau null dalam dataset. Ini bisa dilakukan dengan cara menghapus titik data, menggantinya dengan nilai yang sesuai seperti rata-rata atau median, atau mengisi nilai yang hilang menggunakan teknik statistik.
Outlier
Identifikasi outlier di data, lalu lakukan sesuatu. Bisa dengan menghapus outlier atau mentransformasi data. Tangani dengan bijak ya, karena ga setiap outlier harus dihilangkan datanya.
Cek duplikat
Data duplikat kadang ngeselin. Kadang ini terjadi dan ditemukan dalam data yg kita punya. Sebabnya macam-macam. Bisa kesalahan saat input, atau bisa juga terjadi malah kita yg bikin saat data lagi diolah.
Data Inkonsisten
Ini juga ngeselin. Kadang format data itu gak konsisten. Ini harus dibikin seragam agar nanti saat dilakukan plot atau kalkulasi jadi rapi.
Kalau gak konsisten, nanti ada produk 'Microwave' dan 'Mikrowave' seperti chart di kanan bawah ini:
Uraian di atas adalah prinsip dasarnya. Tapi, Tableau juga kasih catatan kira-kira data apa yang perlu kita perhatikan.
Pertama formatnya adalah kolom dan baris. Setiap baris itu representasi satu item. Tiap kolom juga representasi satu atribut data.
Tableau bisa handle data baik long atau wide format. Tapi, agar nantinya saat bikin visualisasi bisa lebih enak, disarankan memakai format long atau tall.
Di tableau ada fitur pivot, tapi kita juga bisa pivot pakai tools eksternal. Contoh di gambar kanan adlah pakai #Rstats.
Kalau mau lebih jelas soal wide atau long format bisa baca di sini:
Tabel atau data dengan long format memang lebih ramah untuk fitur-fitur di Tableau, filter misalnya. Contoh di bawah adalah #dataviz gue yg ada filternya pake data long format.
Kalau sudah, boleh deh file-nya disimpan dalam bentuk CSV. Untuk tahapan berikut bisa cek di thread #rabuTableau sebelumnya soal bikin data viz pertama:
Jika ingin latihan, belajar, atau mencoba berbagai hal menarik dari Power BI, saya buat satu trid lagi.
Kali ini lebih banyak di materi praktis dan teknis yang bisa teman-teman coba langsung latihannya.
Buat pemula yang mau dive in, boleh.
Simak dan Bookmark!
Bagi yang belum kenal, saya rutin bikin workshop berbagai tema. Minggu ini sebagai kickstart setelah cukup lama vakum, saya dan @alvinisk memberi materi Mini Workshop Power BI yang kini sudah di batch ke-5.
@alvinisk Github ini mungkin sudah tidak terlalu update, tapi lumayan ngasih beberapa file pbix penting buat kita lihat-lihat. Silahkan ke URL di bawah ini buat cek contoh template Power BI yang bisa kita coba.
Kelas malam ini saya melakukan demonstrasi konsep decluttering agar data viz yang kita bikin lebih fokus dan jelas.
Di trid ini saya sedikit menjelaskan kenapa kita tidak boleh pasang chart yang by default dari tools-nya.
Simak dan Bookmark!
Sebelum lanjut, mengenai bikin chart yang efektif dan fokus ada lebih dalam dengan latihan juga ada di dalam silabus (lengkapnya coming soon) kelas data driven presentation di bawah ini.