Saya telah belajar bahwa, untuk membuat model regresi, kita harus menjaga variabel kategori dengan mengubahnya menjadi variabel dummy. Sebagai contoh, jika, dalam kumpulan data kami, ada variabel seperti lokasi:
Location
----------
Californian
NY
Florida
Kami harus mengonversinya seperti:
1 0 0
0 1 0
0 0 1
Namun, disarankan bahwa kita harus membuang satu variabel dummy, tidak peduli berapa banyak variabel dummy yang ada.
Mengapa kita perlu membuang satu variabel dummy?
machine-learning
regression
categorical-data
Mithun Sarker Shuvro
sumber
sumber
Jawaban:
Sederhananya karena satu tingkat fitur kategorikal Anda (di sini lokasi) menjadi grup referensi selama penyandian dummy untuk regresi dan berlebihan. Saya mengutip formulir di sini, "Variabel kategorik dari kategori K, atau level, biasanya memasuki regresi sebagai urutan variabel dummy K-1. Ini sama dengan hipotesis linier pada level rata-rata."
Ini sudah dibahas di stats.stackexchange jawaban yang sangat bagus ini .
Saya diberitahu bahwa ada kursus lanjutan oleh Yandex di Coursera yang membahas hal ini secara lebih rinci jika Anda masih ragu, lihat di sini . Catatan Anda selalu dapat mengaudit konten kursus gratis. ;-)
Posting bagus lainnya jika Anda ingin penjelasan menyeluruh dengan banyak contoh dengan perspektif statistik dan tidak terbatas hanya pada pengkodean dummy, lihat ini dari UCLA (dalam R)
Perhatikan bahwa jika Anda menggunakan
pandas.get_dummies
, ada parameter yaitudrop_first
sehingga untuk mendapatkan k-1 boneka dari tingkat k kategori dengan menghapus tingkat pertama. Harap dicatatdefault = False
, artinya referensi tidak dijatuhkan dan k boneka dibuat dari tingkat k kategori!sumber
Anda tidak perlu turun level, tergantung pada kasus penggunaan Anda.
Lihat
Dalam kasus apa kita seharusnya tidak menjatuhkan variabel kategori tingkat pertama?
dan pertanyaan yang jauh lebih umum
Dalam pembelajaran yang diawasi, mengapa fitur yang berkorelasi buruk?
sumber