Visualisasi distribusi: Histogram dan plot kepadatan

7 Visualisasi distribusi: Histogram dan plot kepadatan

Kami sering menghadapi situasi di mana kami ingin memahami bagaimana suatu variabel tertentu didistribusikan dalam suatu dataset. Untuk memberikan contoh nyata, kita akan mempertimbangkan penumpang Titanic, kumpulan data yang sudah kita temui di Bab 6 . Ada sekitar 1.300 penumpang di Titanic (tidak termasuk kru), dan kami telah melaporkan usia untuk 756 dari mereka. Kita mungkin ingin tahu berapa banyak penumpang dari umur berapapun di Titanic, yaitu, berapa banyak anak, dewasa muda, orang setengah baya, manula, dan sebagainya. Kami menyebut proporsi relatif dari umur yang berbeda di antara penumpang, distribusi usia penumpang.

7.1 Visualisasi distribusi tunggal

Kita bisa mendapatkan gambaran distribusi usia di antara penumpang dengan mengelompokkan semua penumpang ke dalam nampan dengan usia yang sebanding dan kemudian menghitung jumlah penumpang di setiap nampan. Prosedur ini menghasilkan tabel seperti Tabel 7.1 .
Tabel 7.1: Jumlah penumpang dengan usia yang diketahui di Titanic.
Rentang usiaMenghitung
0–536
6–1019
11–1518
16–2099
21–25139
26–30121
Rentang usiaMenghitung
31–3576
36–4074
41–4554
46–5050
51–5526
56–6022
Rentang usiaMenghitung
61–6516
66–703
71–753
Kita dapat memvisualisasikan tabel ini dengan menggambar persegi panjang yang diisi sesuai dengan jumlah dan lebar yang sesuai dengan lebar tempat sampah usia (Gambar 7.1). Visualisasi seperti itu disebut histogram. (Perhatikan bahwa semua nampan harus memiliki lebar yang sama agar visualisasi menjadi histogram yang valid.)
Histogram dari zaman penumpang Titanic.
Gambar 7.1: Histogram usia penumpang Titanic.
Karena histogram dihasilkan oleh binning data, tampilan visualnya yang tepat tergantung pada pilihan lebar bin.Sebagian besar program visualisasi yang menghasilkan histogram akan memilih lebar nampan secara default, tetapi kemungkinan bahwa lebar nampan bukan yang paling tepat untuk histogram yang ingin Anda buat. Oleh karena itu penting untuk selalu mencoba lebar bin yang berbeda untuk memverifikasi bahwa histogram yang dihasilkan mencerminkan data yang mendasarinya secara akurat.Secara umum, jika lebar nampan terlalu kecil, maka histogram menjadi terlalu pucat dan secara visual sibuk dan tren utama dalam data mungkin dikaburkan. Di sisi lain, jika lebar nampan terlalu besar, maka fitur yang lebih kecil dalam distribusi data, seperti penurunan sekitar usia 10, dapat menghilang.
Untuk distribusi usia penumpang Titanic, kita dapat melihat bahwa lebar tempat sampah satu tahun terlalu kecil dan lebar tempat sampah lima belas tahun terlalu besar, sedangkan lebar tempat sampah antara tiga hingga lima tahun berfungsi dengan baik (Gambar 7.2 ).
Histogram tergantung pada lebar nampan yang dipilih. Di sini, distribusi usia yang sama untuk penumpang Titanic ditunjukkan dengan empat lebar tempat sampah yang berbeda: (a) satu tahun; (b) tiga tahun; (c) lima tahun; (d) lima belas tahun.
Gambar 7.2: Histogram tergantung pada lebar nampan yang dipilih. Di sini, distribusi usia yang sama untuk penumpang Titanic ditunjukkan dengan empat lebar tempat sampah yang berbeda: (a) satu tahun; (b) tiga tahun;(c) lima tahun; (d) lima belas tahun.
Saat membuat histogram, selalu jelajahi banyak lebar bin.
Histogram telah menjadi pilihan visualisasi populer sejak abad ke-18, sebagian karena mereka mudah dihasilkan dengan tangan. Baru-baru ini, karena daya komputasi yang luas telah tersedia di perangkat sehari-hari seperti laptop dan ponsel, kami melihat mereka semakin digantikan oleh plot kepadatan. Dalam plot kepadatan, kami berusaha memvisualisasikan distribusi probabilitas yang mendasari data dengan menggambar kurva kontinu yang sesuai (Gambar 7.3 ). Kurva ini perlu diperkirakan dari data, dan metode yang paling umum digunakan untuk prosedur estimasi ini disebut estimasi kepadatan kernel. Dalam estimasi kepadatan kernel, kami menggambar kurva kontinu (kernel) dengan lebar kecil (dikontrol oleh parameter yang disebut bandwidth ) di lokasi setiap titik data, dan kemudian kami menambahkan semua kurva ini untuk mendapatkan estimasi kepadatan akhir. Kernel yang paling banyak digunakan adalah kernel Gaussian (yaitu, kurva lonceng Gaussian), tetapi ada banyak pilihan lain.
Perkiraan kepadatan kernel dari distribusi usia penumpang di Titanic. Ketinggian kurva diskalakan sedemikian sehingga area di bawah kurva sama dengan satu. Estimasi kepadatan dilakukan dengan kernel Gaussian dan bandwidth 2.
Gambar 7.3: Perkiraan kepadatan kernel dari distribusi usia penumpang di Titanic. Ketinggian kurva diskalakan sedemikian sehingga area di bawah kurva sama dengan satu. Estimasi kepadatan dilakukan dengan kernel Gaussian dan bandwidth 2.
Seperti halnya dengan histogram, tampilan visual yang tepat dari plot kepadatan tergantung pada pilihan kernel dan bandwidth (Gambar 7.4 ). Parameter bandwidth berperilaku sama dengan lebar bin dalam histogram. Jika bandwidth terlalu kecil, maka estimasi kepadatan bisa menjadi terlalu sibuk dan secara visual sibuk dan tren utama dalam data mungkin dikaburkan. Di sisi lain, jika bandwidth terlalu besar, maka fitur yang lebih kecil dalam distribusi data dapat hilang.Selain itu, pilihan kernel mempengaruhi bentuk kurva kepadatan. Misalnya, kernel Gaussian akan memiliki kecenderungan untuk menghasilkan estimasi kepadatan yang terlihat seperti Gaussian, dengan fitur dan ekor yang halus. Sebaliknya, kernel segi empat dapat menghasilkan tampilan langkah-langkah pada kurva kepadatan (Gambar 7.4 d). Secara umum, semakin banyak titik data yang ada dalam kumpulan data, semakin sedikit pilihan masalah kernel. Oleh karena itu, plot kerapatan cenderung cukup andal dan informatif untuk set data besar tetapi dapat menyesatkan untuk set data yang hanya beberapa poin.
Perkiraan kepadatan kernel tergantung pada kernel dan bandwidth yang dipilih. Di sini, distribusi usia yang sama untuk penumpang Titanic ditunjukkan untuk empat kombinasi berbeda dari parameter-parameter ini: (a) Gaussian kernel, bandwidth = 0,5; (B) Kernel Gaussian, bandwidth = 2; (c) Kernel Gaussian, bandwidth = 5; (d) Kernel segi empat, bandwidth = 2.
Gambar 7.4: Perkiraan kepadatan kernel tergantung pada kernel dan bandwidth yang dipilih. Di sini, distribusi usia yang sama untuk penumpang Titanic ditunjukkan untuk empat kombinasi berbeda dari parameter-parameter ini: (a) Gaussian kernel, bandwidth = 0,5; (B) Kernel Gaussian, bandwidth = 2; (c) Kernel Gaussian, bandwidth = 5; (d) Kernel segi empat, bandwidth = 2.
Kurva kepadatan biasanya diskalakan sedemikian sehingga area di bawah kurva sama dengan satu. Konvensi ini dapat membuat skala sumbu y membingungkan, karena itu tergantung pada unit sumbu x . Misalnya, dalam kasus distribusi usia, kisaran data pada sumbu x bergerak dari 0 menjadi sekitar 75. Oleh karena itu, kami memperkirakan tinggi rata-rata kurva kepadatan adalah 1/75 = 0,013.Memang, ketika melihat kurva kepadatan usia (misalnya, Gambar 7.4 ), kita melihat bahwa nilai y berkisar dari 0 hingga sekitar 0,04, dengan rata-rata di suatu tempat mendekati 0,01.
Perkiraan kepadatan kernel memiliki satu perangkap yang perlu kita waspadai: Mereka memiliki kecenderungan untuk menghasilkan tampilan data di mana tidak ada, khususnya di bagian ekor. Sebagai konsekuensinya, penggunaan perkiraan kepadatan yang tidak hati-hati dapat dengan mudah menyebabkan angka yang membuat pernyataan tidak masuk akal. Sebagai contoh, jika kita tidak memperhatikan, kita mungkin menghasilkan visualisasi distribusi usia yang mencakup usia negatif (Gambar 7.5 ).
Perkiraan kepadatan kernel dapat memperpanjang ekor distribusi ke area di mana tidak ada data dan bahkan tidak ada data yang mungkin. Di sini, perkiraan kepadatan telah diizinkan untuk melampaui rentang usia negatif. Ini jelas tidak masuk akal dan harus dihindari.
Gambar 7.5: Perkiraan kepadatan kernel dapat memperpanjang ekor distribusi ke daerah-daerah di mana tidak ada data dan bahkan tidak ada data yang mungkin. Di sini, perkiraan kepadatan telah diizinkan untuk melampaui rentang usia negatif. Ini jelas tidak masuk akal dan harus dihindari.
Selalu pastikan bahwa perkiraan kepadatan Anda tidak memprediksi keberadaan nilai data yang tidak masuk akal.
Jadi sebaiknya Anda menggunakan histogram atau plot kepadatan untuk memvisualisasikan distribusi? Diskusi hangat dapat dilakukan tentang topik ini. Beberapa orang sangat menentang plot kepadatan dan percaya bahwa mereka sewenang-wenang dan menyesatkan. Yang lain menyadari bahwa histogram bisa sewenang-wenang dan menyesatkan. Saya pikir pilihan sebagian besar adalah masalah selera, tetapi kadang-kadang satu atau pilihan lain mungkin lebih akurat mencerminkan fitur tertentu yang menarik dalam data yang ada. Ada juga kemungkinan tidak menggunakan keduanya dan sebagai gantinya memilih fungsi kerapatan kumulatif empiris atau plot qq (Bab 8 ).Akhirnya, saya percaya bahwa perkiraan kepadatan memiliki keunggulan yang melekat atas histogram segera setelah kami ingin memvisualisasikan lebih dari satu distribusi pada suatu waktu (lihat bagian berikutnya).

7.2 Memvisualisasikan banyak distribusi sekaligus

Dalam banyak skenario kami memiliki beberapa distribusi yang ingin kami visualisasikan secara bersamaan. Sebagai contoh, katakanlah kita ingin melihat bagaimana usia penumpang Titanic didistribusikan antara pria dan wanita.Apakah penumpang pria dan wanita pada umumnya memiliki usia yang sama, atau adakah perbedaan usia antara jenis kelamin? Salah satu strategi visualisasi yang biasa digunakan dalam kasus ini adalah histogram bertumpuk, di mana kami menggambar palang histogram untuk wanita di atas palang untuk pria, dengan warna berbeda (Gambar 7.6 ).
Histogram usia penumpang Titanic dikelompokkan berdasarkan jenis kelamin. Angka ini telah dilabeli sebagai "buruk" karena histogram yang ditumpuk mudah dikacaukan dengan histogram yang tumpang tindih (lihat juga Gambar 7.7). Selain itu, ketinggian bar yang mewakili penumpang wanita tidak dapat dengan mudah dibandingkan satu sama lain.
Gambar 7.6: Histogram usia penumpang Titanic dikelompokkan berdasarkan jenis kelamin. Angka ini telah dilabeli sebagai "buruk" karena histogram yang ditumpuk mudah dikacaukan dengan histogram yang tumpang tindih (lihat juga Gambar 7.7 ). Selain itu, ketinggian bar yang mewakili penumpang wanita tidak dapat dengan mudah dibandingkan satu sama lain.
Menurut pendapat saya, visualisasi jenis ini harus dihindari.Ada dua masalah utama di sini: Pertama, dari hanya melihat sosoknya, tidak pernah sepenuhnya jelas di mana tepatnya bar dimulai. Apakah mereka mulai di mana warna berubah atau apakah mereka seharusnya memulai dari nol? Dengan kata lain, apakah ada sekitar 25 wanita berusia 18-20 atau ada hampir 80? (Yang pertama adalah kasusnya.) Kedua, ketinggian batang untuk jumlah perempuan tidak dapat langsung dibandingkan satu sama lain, karena batang semua dimulai pada ketinggian yang berbeda. Misalnya, pria rata-rata lebih tua daripada wanita, dan fakta ini sama sekali tidak terlihat pada Gambar 7.6 .
Kita bisa mencoba mengatasi masalah ini dengan membuat semua bar mulai dari nol dan membuat bar sebagian transparan (Gambar 7.7 ).
Distribusi usia penumpang Titanic pria dan wanita, ditampilkan sebagai dua histogram yang tumpang tindih. Angka ini telah dilabeli sebagai "buruk" karena tidak ada indikasi visual yang jelas bahwa semua bilah biru dimulai pada hitungan 0.
Gambar 7.7: Distribusi usia penumpang Titanic pria dan wanita, ditampilkan sebagai dua histogram yang tumpang tindih. Angka ini telah dilabeli sebagai "buruk" karena tidak ada indikasi visual yang jelas bahwa semua bilah biru dimulai pada hitungan 0.
Namun, pendekatan ini menghasilkan masalah baru.Sekarang tampaknya ada sebenarnya tiga kelompok berbeda, bukan hanya dua, dan kami masih belum sepenuhnya yakin di mana setiap bilah dimulai dan berakhir.Histogram yang tumpang tindih tidak berfungsi dengan baik karena bilah semi-transparan yang digambar di atas bilah lain cenderung tidak terlihat seperti bilah semi-transparan, melainkan bilah yang digambar dengan warna berbeda.
Plot kepadatan tumpang tindih biasanya tidak memiliki masalah yang tumpang tindih histogram, karena garis kepadatan kontinu membantu mata menjaga distribusi terpisah. Namun, untuk dataset khusus ini, distribusi usia untuk penumpang pria dan wanita hampir identik hingga sekitar usia 17 dan kemudian menyimpang, sehingga visualisasi yang dihasilkan masih belum ideal (Gambar 7.8 ).
Perkiraan kepadatan usia penumpang Titanic pria dan wanita. Untuk menyoroti bahwa ada lebih banyak penumpang pria daripada wanita, kurva kepadatan diskalakan sedemikian rupa sehingga area di bawah masing-masing kurva sesuai dengan jumlah total penumpang pria dan wanita dengan usia yang diketahui (masing-masing 468 dan 288).
Gambar 7.8: Perkiraan kepadatan usia penumpang Titanic pria dan wanita.Untuk menyoroti bahwa ada lebih banyak penumpang pria daripada wanita, kurva kepadatan diskalakan sedemikian rupa sehingga area di bawah masing-masing kurva sesuai dengan jumlah total penumpang pria dan wanita dengan usia yang diketahui (masing-masing 468 dan 288).
Solusi yang berfungsi dengan baik untuk dataset ini adalah untuk menunjukkan distribusi usia penumpang pria dan wanita secara terpisah, masing-masing sebagai proporsi dari distribusi usia secara keseluruhan (Gambar 7.9 ). Visualisasi ini menunjukkan secara intuitif dan jelas bahwa ada lebih sedikit wanita daripada pria dalam rentang usia 20-50 tahun di Titanic.
Distribusi usia penumpang Titanic pria dan wanita, ditunjukkan sebagai proporsi dari total penumpang. Area berwarna masing-masing menunjukkan perkiraan kepadatan usia penumpang pria dan wanita, dan area abu-abu menunjukkan distribusi usia penumpang secara keseluruhan.
Gambar 7.9: Distribusi usia penumpang Titanic pria dan wanita, ditunjukkan sebagai proporsi dari total penumpang. Area berwarna masing-masing menunjukkan perkiraan kepadatan usia penumpang pria dan wanita, dan area abu-abu menunjukkan distribusi usia penumpang secara keseluruhan.
Akhirnya, ketika kita ingin memvisualisasikan tepat dua distribusi, kita juga dapat membuat dua histogram yang terpisah, memutarnya 90 derajat, dan menempatkan bilah di satu titik histogram ke arah yang berlawanan dari yang lain.Trik ini biasanya digunakan ketika memvisualisasikan distribusi usia, dan plot yang dihasilkan biasanya disebut piramida usia (Gambar 7.10 ).
Distribusi usia penumpang Titanic pria dan wanita divisualisasikan sebagai piramida usia.
Gambar 7.10: Distribusi usia penumpang Titanic pria dan wanita divisualisasikan sebagai piramida usia.
Yang penting, trik ini tidak berfungsi ketika ada lebih dari dua distribusi yang ingin kami visualisasikan pada saat bersamaan. Untuk beberapa distribusi, histogram cenderung menjadi sangat membingungkan, sedangkan plot kerapatan bekerja dengan baik selama distribusinya agak berbeda dan berdekatan. Misalnya, untuk memvisualisasikan distribusi persentase lemak mentega di antara sapi-sapi dari empat breed sapi yang berbeda, plot kepadatannya baik-baik saja (Gambar 7.11 ).
Perkiraan kepadatan dari persentase lemak dalam susu dari empat breed sapi. Sumber Data: Catatan Kinerja Kanada untuk Sapi Perah Murni
Gambar 7.11: Perkiraan kepadatan persentase lemak mentega dalam susu dari empat breed sapi. Sumber Data: Catatan Kinerja Kanada untuk Sapi Perah Murni
Untuk memvisualisasikan beberapa distribusi sekaligus, plot kerapatan kernel umumnya akan bekerja lebih baik daripada histogram.