Sekilas sekilas pada dataset


10

Maafkan ketidaktahuan saya, tapi ...

Saya terus menemukan diri saya dalam situasi, di mana saya dihadapkan dengan sekelompok data baru yang berhasil saya temukan. Data ini biasanya terlihat seperti ini:

Date     Number1  Number2  Category1  Category2
20120125      11      101        Dog      Brown
20120126      21       90        Cat      Black
20120126      31      134        Cat      Brown
(...)

Biasanya sekilas saya tidak tahu apakah ada tren di sini. Korelasi antara berbagai kolom mungkin tidak terlalu signifikan, tetapi saya akan senang jika saya tidak harus secara manual membuat plot untuk setiap kemungkinan kombinasi kolom / kategori.

Apakah ada alat di luar sana yang akan menerima tabel data bersama dengan informasi kolom mana yang harus diperlakukan sebagai angka, tanggal dan kategori dan kemudian melanjutkan ke plot:

  • korelasi antara masing-masing dua kolom numerik
  • korelasi antara masing-masing dua kolom numerik, dengan garis tren terpisah untuk setiap kategori
  • setiap kolom nomor sebagai deret waktu,
  • setiap kolom nomor sebagai deret waktu, dipisahkan berdasarkan kategori,
  • dll.

Pada akhirnya ini akan menghasilkan sejumlah besar plot, yang sebagian besar hanya akan menunjukkan kebisingan. Idealnya, alat ini dapat mencetak plot dengan korelasi dan pada akhirnya menampilkan slideshow yang dimulai dengan plot skor tertinggi. Ini akan menjadi pandangan pertama yang sangat tidak sempurna, tetapi berguna pada dataset.

Begitu? Apakah ada alat yang digunakan semua orang untuk ini dan saya tidak tahu, atau ini sesuatu yang perlu kita buat?


Terima kasih banyak atas jawaban Anda. Saya meluangkan waktu untuk menguji setiap alat yang Anda sebutkan pada data saya. Saya akan memilih jawaban setelah ujian saya. Saya kira itu terlalu buruk saya tidak bisa memilih lebih dari satu :)
postrasional

Jawaban:


15

@Ondrej dan @Michelle telah memberikan beberapa informasi yang baik di sini. Saya ingin tahu apakah saya dapat berkontribusi dengan membahas beberapa poin yang tidak disebutkan di tempat lain. Saya tidak akan menyalahkan diri sendiri tentang tidak bisa mendapatkan banyak dari data dalam bentuk tabel, tabel umumnya bukan cara yang sangat baik untuk menyajikan informasi (lih., Gelman et al., Mengubah Tabel menjadi Grafik ). Di sisi lain, meminta alat yang secara otomatis akan menghasilkan semua grafik yang tepat untuk membantu Anda menjelajahi set data baru hampir seperti meminta alat yang akan membuat Anda berpikir untuk Anda. (Jangan anggap itu salah, saya tahu pertanyaan Anda menjelaskan bahwa Anda tidak melangkah sejauh itu; Maksud saya, tidak akan pernah ada alat seperti itu.) Diskusi bagus yang terkait dengan ini dapat ditemukan di sini .

Hal-hal ini telah dikatakan, saya ingin berbicara sedikit tentang jenis plot yang mungkin ingin Anda gunakan untuk mengeksplorasi data Anda. Plot yang tercantum dalam pertanyaan akan menjadi awal yang baik, tetapi kami mungkin dapat mengoptimalkannya sedikit. Untuk memulainya, membuat "sejumlah besar plot" pasangan variabel yang berkorelasi mungkin tidak ideal. Scatterplot hanya menampilkan hubungan marginal antara dua variabel. Hubungan penting seringkali dapat disembunyikan dalam kombinasi beberapa variabel. Jadi cara pertama untuk memperkuat pendekatan ini adalah dengan membuat matriks sebaryang menampilkan semua scatterplot berpasangan secara bersamaan. Matriks scatterplot dapat ditingkatkan dengan berbagai cara: Misalnya, mereka dapat dikombinasikan dengan plot kepadatan kernel univariat dari masing-masing distribusi variabel, penanda / warna yang berbeda dapat digunakan untuk memplot kelompok yang berbeda, dan kemungkinan hubungan nonlinier dapat dinilai dengan melapiskan loess fit. The scatterplot.matrixfungsi dalam paket mobil di R dapat melakukan semua hal ini baik (contoh dapat dilihat setengah halaman terkait di atas).

Namun, sementara matriks sebar adalah awal yang baik, mereka masih hanya menampilkan proyeksi marjinal. Ada beberapa cara untuk mencoba bergerak melampaui ini. Salah satunya adalah mengeksplorasi plot 3 dimensi menggunakan paket rgl di R. Pendekatan lain adalah menggunakan plot bersyarat; coplots dapat membantu hubungan antara 3 atau 4 variabel secara bersamaan. Pendekatan yang sangat berguna adalah menggunakan matriks sebar secara interaktif(walaupun, ini akan membutuhkan lebih banyak upaya untuk belajar), misalnya dengan 'menyikat'. Menyikat memungkinkan Anda untuk menyorot titik atau titik dalam satu frame dari matriks dan titik-titik itu secara bersamaan akan disorot di semua frame lainnya. Dengan menggerakkan kuas, Anda dapat melihat bagaimana semua variabel berubah bersama. UPDATE: Kemungkinan lain yang saya lupa sebutkan adalah menggunakan plot koordinat paralel . Ini memiliki kelemahan dalam tidak membuat variabel respons Anda berbeda, tetapi bisa berguna, misalnya, dalam memeriksa inter-korelasi antara variabel X Anda.

Saya juga ingin memuji Anda karena memeriksa data Anda yang diurutkan berdasarkan tanggal yang dikumpulkan. Meskipun data selalu dikumpulkan dari waktu ke waktu, orang tidak selalu melakukan ini. Merencanakan grafik garis itu bagus, tapi saya sarankan Anda menambahkannya dengan grafik autokorelasi dan autokorelasi parsial . Dalam R, fungsi untuk ini adalah acfdan pacfmasing - masing.

Saya menyadari bahwa semua ini tidak cukup menjawab pertanyaan Anda dalam arti memberi Anda alat yang akan membuat semua plot untuk Anda secara otomatis, tetapi salah satu implikasinya adalah Anda tidak benar-benar harus membuat plot sebanyak yang Anda khawatirkan. , misalnya, matriks sebar hanya satu baris kode. Selain itu, dalam R, harus dimungkinkan untuk menulis fungsi / kode yang dapat digunakan kembali untuk diri Anda sendiri yang sebagian akan mengotomatiskan sebagian dari ini (misalnya, saya dapat membayangkan fungsi yang mengambil dalam daftar variabel dan urutan tanggal, mengurutkannya , muncul jendela baru untuk masing-masing dengan garis, acf, dan plot pacf)


Seperti biasa, poin bagus. :)
Michelle

2
(+1) Jangan lewatkan ggobi dan marginal.plotdari paket latticeExtra .
chl

7

Korelasi antara setiap pasangan kolom numerik dapat ditunjukkan dalam matriks korelasi. Itu tidak harus murni numerik, bisa kode warna, untuk memungkinkan evaluasi sekilas. Lihat paket corrplot untuk R.

Untuk analisis lebih lanjut, Rattle adalah alat GUI yang cukup berguna.

Jika Anda mencari Stack Exchange menggunakan kata kunci "corrplot" atau lebih tepatnya "Rattle", Anda akan menemukan beberapa topik di mana alat ini dan alternatifnya dicakup. Seperti ini .

Semoga berhasil!


4

@Ondrej telah memberikan beberapa saran bagus, jadi saya akan fokus pada pertanyaan Anda seputar bagaimana perangkat lunak memperlakukan data yang diimpor. Dengan data karakter, "Kategori 1" dan "Kategori 2", perangkat lunak secara otomatis memperlakukan ini sebagai kelompok atau faktor karena operasi matematika tidak dapat dilakukan pada potongan data ini. Ini berarti bahwa Anda akan dicegah memasukkan apa pun dari kategori tersebut (atau, Anda akan mendapatkan kesalahan jika Anda mencoba jika Anda menggunakan sintaks atau baris perintah alih-alih sistem yang digerakkan menu) ke dalam analisis yang memerlukan angka.

Untuk data seperti "Nomor 1" dan "Nomor 2" Anda, perangkat lunak membaca ini sebagai angka. Jika Anda memiliki grup / faktor apa pun yang berisi data numerik murni, Anda perlu menginstruksikan perangkat lunak Anda bahwa ini adalah grup / faktor.

Terkadang kurma dapat diimpor dengan buruk ke dalam perangkat lunak statistik. Setelah Anda mengimpor data Anda, Anda akan melihat bahwa tipe data dalam perangkat lunak statistik Anda menunjukkan beberapa bentuk tipe "tanggal" untuk "Tanggal". Jika Anda melihat tipe data selain dari tanggal, Anda memiliki masalah. Bahkan jika itu ditampilkan sebagai tanggal, periksa impor beberapa baris di mana Anda memiliki tanggal seperti hari-hari seperti tanggal 13 atau 25 bulan itu - tergantung pada bagaimana perangkat lunak diatur, kadang-kadang format tanggal Amerika / Inggris menyebabkan data sulit dari impor , karena pembalikan hari / bulan.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.