Materi
Analisis data adalah rangkaian langkah membaca data mentah, membersihkannya, meringkasnya, lalu menjawab pertanyaan dengan angka hasil ringkasan itu. Di kelas ini datanya berupa tabel: setiap baris satu transaksi, setiap kolom satu keterangan. Urutan yang sama dipakai setiap bulan di kantor: menutup buku penjualan, menghitung omzet per cabang, dan menyiapkan angka untuk rapat.
Dua jenis isi kolom
| Jenis | Isi | Contoh kolom | Yang bisa dihitung |
|---|---|---|---|
| Kategorik | Label atau nama kelompok | cabang, produk | Banyaknya baris per kelompok |
| Numerik | Angka yang punya satuan | jumlah, total | Jumlah, rata-rata, nilai tertinggi |
Tanggal berada di antara keduanya: bentuknya teks saat dibaca dari CSV, dan baru bisa diurutkan atau dikelompokkan per bulan setelah diubah menjadi tipe tanggal (pelajaran 17).
Contoh di luar latihan: berkas ekspor mesin kasir berisi kolom jam, kasir, metode_bayar, dan nominal. Kolom kasir dan metode_bayar kategorik, sehingga pertanyaan yang cocok adalah berapa banyak transaksi per metode bayar. Kolom nominal numerik, sehingga pertanyaannya berapa rata-rata belanja setiap transaksi.
Kesalahan umum: menghitung rata-rata kolom kategorik. Perintah semacam df["cabang"].mean() berhenti dengan TypeError karena isi kolom itu nama, bukan angka. Yang bisa dihitung dari kolom kategorik hanyalah banyaknya baris per kelompok.
Angka tidak selalu berarti numerik. Nomor pegawai, nomor meja, dan kode wilayah ditulis dengan angka, tetapi fungsinya label: rata-rata nomor meja tidak menjawab pertanyaan apa pun. Ujiannya satu pertanyaan — apakah menjumlahkan dua nilainya menghasilkan sesuatu yang bermakna. Bila tidak, kolom itu diperlakukan sebagai kategorik meski pandas membacanya sebagai bilangan.
Dua alat yang dipakai: numpy untuk deretan angka (array) dan pandas untuk tabel (DataFrame). pandas dibangun di atas numpy, jadi keduanya sering dipakai bersama.