Apa regresi yang digunakan untuk menghitung hasil pemilihan dalam sistem multi partai?

11

Saya ingin membuat prediksi untuk hasil pemilihan parlemen. Output saya akan menjadi% yang diterima masing-masing pihak. Ada lebih dari 2 pihak sehingga regresi logistik bukan pilihan yang layak. Saya bisa membuat regresi terpisah untuk masing-masing pihak tetapi dalam hal ini hasilnya akan dalam beberapa cara independen satu sama lain. Itu tidak akan memastikan bahwa jumlah hasil akan 100%.

Apa regresi (atau metode lain) yang harus saya gunakan? Apakah mungkin untuk menggunakan metode ini dalam R atau Python melalui perpustakaan tertentu?

Viktor
sumber
Jika Anda diizinkan untuk mengubah output Anda menjadi biner (tergantung pada pihak mana yang menang), regresi logistik multinomial sangat cocok. Masih mempertimbangkan output independen yang mungkin bukan yang Anda inginkan.
Robert Smith

Jawaban:

5

Robert benar, regresi logistik multinomial adalah alat terbaik untuk digunakan. Meskipun Anda harus memiliki nilai integer yang mewakili partai sebagai variabel dependen, misalnya:

1 = Mayoritas konservatif, 2 = Mayoritas buruh, 3 = Mayoritas liberal .... (dan seterusnya)

Anda dapat melakukan ini di R menggunakan paket nnet. Berikut adalah tempat yang baik untuk menjalankan dengan cepat bagaimana menggunakannya.

Glen Moutrie
sumber
3

Atas dasar apa Anda ingin mendasarkan prediksi Anda? Saya sudah mencoba untuk memprediksi hasil pemilihan multi partai untuk tesis saya berdasarkan tahun-tahun sebelumnya dan kemudian menggunakan hasil untuk beberapa TPS dari tahun ini memprediksi hasil di semua TPS lain. Untuk ini model linier yang saya gunakan membandingkan perkiraan jumlah suara yang akan diperoleh masing-masing pihak dengan melakukan regresi terhadap suara-suara dari tahun-tahun sebelumnya. Jika Anda memiliki perkiraan jumlah suara untuk semua pihak, Anda dapat menghitung persentase dari itu. Lihat Forecasts From Nonrandom Samples untuk makalah yang relevan, yang memperluas model linier.

Bas
sumber
2

Ini bukan regresi tetapi masalah klasifikasi multi-kelas. Keluaran biasanya probabilitas semua kelas untuk setiap contoh uji yang diberikan (baris uji). Jadi dalam kasus Anda, output untuk setiap baris uji yang diberikan dari model yang dilatih akan berupa:

prob_1, prob_2, prob_3,..., prob_k

di mana prob_i menunjukkan probabilitas kelas ke-i (dalam kasus Anda, pihak ke-i), dengan asumsi ada kelas k dalam variabel respons. Perhatikan bahwa jumlah probabilitas k ini akan menjadi 1. Prediksi kelas dalam kasus ini akan menjadi kelas yang memiliki probabilitas maksimum.

Ada banyak pengklasifikasi di R yang melakukan klasifikasi multi-kelas. Anda bisa menggunakan regresi logistik dengan dukungan multi-kelas melalui paket nnet di R dan menjalankan multinomperintah.

Sebagai alternatif, Anda juga bisa menggunakan paket gbm di R dan menjalankan gbmperintah. Untuk membuat classifier multi-kelas, cukup gunakan distribution="multinomial" while using thefungsi gbm`.

Nitesh
sumber