Я не уверен, какие данные здесь предоставить, и не могу предоставить средства для воспроизведения проблемы без предоставления полных данных. Я могу только предоставить код и сообщение об ошибке и надеюсь, что кто-то узнает это.
У меня есть модель, в которой используется случайный лес рейнджеров с преобразованной в журнал целевой переменной «mod.rangerRF.logknn». Мои новые данные содержат десятки тысяч записей, однако, когда я предсказываю, что небольшая горстка (точнее, 5) возвращает NaN.
Это происходит только с логарифмической версией модели.
Пример с прогнозированием по одному наблюдению:
predict(mod.rangerRF.logknn, newdata = filter(p.test.knn, id == 31874))
[1] 15.40513
Возвращается число, которое я могу затем преобразовать обратно. Это относится ко всем, кроме 5 проблемных записей, которые возвращают NaN.
> predict(mod.rangerRF.logknn, newdata = filter(p.test.knn, id == 31873))
[1] NaN
NaN, который я не могу преобразовать обратно.
Десятки тысяч строк, сотни функций. Только 5 экземпляров NaN возвращаются при выполнении прогноза.
Я не уверен, с чего начать отладку этого.
Во время предварительной обработки я обеспечил полные данные без пропущенных значений. Все данные являются числовыми благодаря использованию фиктивных переменных.
Кто-нибудь признает эту проблему? Любые указатели на то, где я могу посмотреть?
В комментариях здесь вывод модели
> print(mod.rangerRF.logknn)
Random Forest
30471 samples
193 predictor
No pre-processing
Resampling: Cross-Validated (5 fold)
Summary of sample sizes: 24376, 24376, 24378, 24377, 24377
Resampling results across tuning parameters:
mtry RMSE Rsquared
2 0.5125155 0.2832599
5 0.4936741 0.3343648
10 0.4845437 0.3592030
20 0.4797720 0.3732469
40 0.4778534 0.3790508
RMSE was used to select the optimal model using the smallest value.
The final value used for the model was mtry = 40.
print(mod.rangerRF.logknn)
? - person Marco Sandri   schedule 14.05.2017