Paket randomForest R tidak dapat menangani faktor dengan lebih dari 32 level. Ketika diberikan lebih dari 32 level, ia memancarkan pesan kesalahan:
Tidak dapat menangani prediktor kategori dengan lebih dari 32 kategori.
Tetapi data yang saya miliki memiliki beberapa faktor. Beberapa dari mereka memiliki 1000+ level dan beberapa dari mereka memiliki 100+. Ia bahkan memiliki 'status' negara bagian yaitu 52.
Jadi, inilah pertanyaan saya.
Mengapa ada batasan seperti itu? randomForest menolak untuk menjalankan bahkan untuk kasus sederhana.
> d <- data.frame(x=factor(1:50), y=1:50) > randomForest(y ~ x, data=d) Error in randomForest.default(m, y, ...) : Can not handle categorical predictors with more than 32 categories.
Jika itu hanya karena keterbatasan memori, bagaimana scikit dapat belajar randomForeestRegressor belajar berjalan dengan lebih dari 32 level?
Apa cara terbaik untuk menangani masalah ini? Misalkan saya memiliki X1, X2, ..., X50 variabel independen dan Y adalah variabel dependen. Dan misalkan X1, X2 dan X3 memiliki lebih dari 32 level. Apa yang harus saya lakukan?
Apa yang saya pikirkan adalah menjalankan algoritma clustering untuk masing-masing X1, X2 dan X3 di mana jarak didefinisikan sebagai perbedaan dalam Y. Saya akan menjalankan tiga clustering karena ada tiga variabel bermasalah. Dan di setiap pengelompokan, saya berharap dapat menemukan level yang sama. Dan saya akan menggabungkan mereka.
Bagaimana ini terdengar?