Kotak, kumis, dan biola





Sangat sering data perlu dibandingkan. Misalnya, kami memiliki beberapa rangkaian data dari beberapa bidang aktivitas manusia (industri, kedokteran, pemerintah, ...), dan kami ingin membandingkan seberapa mirip mereka atau, sebaliknya, bagaimana beberapa indikator menonjol dibandingkan dengan yang lain. Untuk memudahkan persepsi, mari kita ambil data yang lebih sederhana, universal dan netral - tinggi pada layu dan berat beberapa ras anjing menurut American Kennel Club. Data ukuran batuan rata-rata dapat ditemukan di sini... Tambahkan ke ini fungsi random.uniform dari pustaka numpy Python, ubah inci menjadi sentimeter, dan pound menjadi kilogram, dan sekarang kami memiliki kumpulan data ukuran anjing yang tampak realistis untuk beberapa ras untuk dikerjakan. Dalam contoh kami, ini adalah Chihuahua, Beagle, Rottweilers, dan English Setter.







Salah satu analis yang dapat Anda gunakan untuk membandingkan 4 rangkaian angka ini adalah dengan melihat mediannya. Ini membagi seri data menjadi dua bagian: separuh nilai lebih kecil dari median dan separuh lainnya lebih besar. Kami menemukan nilai median dengan mengelompokkan berdasarkan kolom berkembang biak menggunakan perpustakaan pandas dan menerapkan fungsi median ke data yang dikelompokkan. Demikian pula, Anda dapat melihat indikator statistik lainnya: mean (mean) dan mode (mode).



Kami melihat bahwa setengah dari Chihuahua yang kami temui memiliki tinggi di layu tidak lebih dari 18 cm, anjing pemburu itu jauh lebih tinggi - di wilayah 41 cm, dan ukuran berikutnya adalah Rottweiler dan setter Inggris, yang tingginya sedikit berbeda: 58 dan 63 cm.







Gambar 2. Median nilai ketinggian di layu dari empat ras anjing.

Tetapi hanya satu median tidak cukup untuk analisis komparatif data. Anda bisa mendapatkan lebih banyak informasi dengan melihat alat seperti plot box-and-whiskers menggunakan pustaka plotting seaborn Python. Garis di dalam kotak adalah median yang sudah dikenal. Levelnya pada grafik di sebelah kanan (lihat Gambar 3) bertepatan dengan ketinggian kolom yang sesuai di sebelah kiri. Tetapi pada saat yang sama, diagram ayun berisi informasi tambahan tentang bagaimana data didistribusikan dalam baris: batas bawah persegi panjang (kotak) adalah kuartil pertama (nilainya melebihi 25% dari nilai rangkaian), dan batas atas adalah kuartil ketiga (nilainya melebihi 75% dari nilai ). Dan "kumis" itu adalah segmen,memanjang ke atas dan ke bawah dari tengah persegi panjang diplot berdasarkan rentang interkuartil dan menunjukkan batas atas dan bawah dari bagian penting data kita, tidak termasuk pencilan. Tidak ada emisi di sini (kami tidak menemukan distrofik dan anjing raksasa), jika ada mereka akan ditampilkan sebagai label di luar "kumis".







Gambar 3. Perbandingan plot batang dan rentang yang diplot untuk dataset yang sama.

Plot biola dari perpustakaan seaborn yang sama memberi kita lebih banyak wawasan tentang struktur data yang dipermasalahkan. Gambar 4 di bawah ini menunjukkan ketiga grafik, di mana bebatuan berada dalam urutan yang sama setiap saat, dan warna untuk baris yang sesuai dipertahankan.







Gambar 4. Perbandingan plot batang, ayunan, dan biola yang diplot untuk dataset yang sama.

Misalnya, data Rottweiler ditampilkan dalam warna hijau.



Persamaan dan perbedaan antara diagram bentang (kotak dengan kumis) dan grafik biola ditunjukkan pada Gambar 5. Pertama, persamaan: (1) kedua grafik dalam satu bentuk atau lainnya mewakili 0,25-kuantitatif, 0,5-kuantitatif (median) dan 0,75-kuantitatif; (2) ada dan ada nilai ekstrim, yang dekat dengan nilai satu setengah jarak interkuartil (IQR), diplot dari tepi bawah dan atas kotak - "kumis" paling untuk diagram ayunan, di luarnya ada "pencilan".



Perbedaannya, grafik biola juga memuat informasi tentang bagaimana data didistribusikan secara internal. batas dari "biola" yang dibangun adalah kepadatan distribusi yang diputar 90 derajat. Dan dalam hal ini, ketika menganalisis grafik, kami memiliki lebih banyak informasi: selain jumlah dan nilai yang menggambarkan 4 jarak antar kuartil (1,5 + 1 + 1,5), pada grafik biola Anda dapat melihat apakah datanya terdistribusi merata atau ada beberapa pusat yang nilainya lebih banyak sering.







Gambar 5. Penjelasan tentang korespondensi elemen dua grafik: span dan biola.

Ide ini dapat dilihat lebih jelas pada grafik berikut (Gambar 6), di mana data untuk dua kelompok Rottweiler berbeda, tetapi dipilih sedemikian rupa sehingga mediannya sama (grafik paling kiri) dan bahkan lebih - diagram ayunan (di tengah) juga bertepatan! Dan hanya grafik biola (paling kanan) yang menunjukkan kepada kita bahwa sebenarnya struktur datanya berbeda secara signifikan.







Gambar 6. Contoh di mana hanya grafik biola yang memungkinkan kita untuk melihat perbedaan dalam struktur internal data yang sedang dipertimbangkan.

Dengan menggunakan clustering K-Means (cluster.KMeans) dari modul sklearn, kita dapat merepresentasikan data yang dikelompokkan secara visual dengan memplot sebar plot menggunakan fungsi scatterplot dari modul seaborn. Di sini, warna memisahkan satu cluster yang dibuat oleh algoritme ML dari yang lain, dan bentuk marker menunjukkan yang asli milik satu atau kelompok lain. Tidak perlu mengurangi dimensi menggunakan PCA atau metode lainnya, karena datanya awalnya 2D.







Kode untuk clustering dan scatter plotting:









Jadi, dengan menggunakan contoh data tentang tinggi badan di layu beberapa ras anjing, kami berkenalan dengan beberapa karakteristik statistik deret bilangan dan alat untuk visualisasinya. Alat sederhana memberikan metrik yang jelas, tetapi tidak memberikan gambaran yang lengkap. Alat yang lebih canggih memberikan gambaran data yang lebih dalam, tetapi alat tersebut juga lebih sulit untuk dilihat karena bertambahnya jumlah informasi pada grafik. Dan di sini penting untuk memilih alat untuk tugas tertentu guna menemukan keseimbangan antara kelengkapan informasi yang diperlukan dan kemudahan persepsinya pada bagan.



All Articles