我不确定此处提供哪些数据,并且无法在不共享完整数据的情况下提供复制问题的方法。我只能提供代码和错误消息,并希望有人认识到这一点。
我有一个模型,它使用游侠随机forrest和一个日志转换的目标变量" mod.rangerRF.logknn"。我的新数据有成千上万的记录,但是当我预测它有少量(确切地说是5个)返回NaN时。
仅在模型的日志版本中发生。
预测单个观察的示例:
predict(mod.rangerRF.logknn, newdata = filter(p.test.knn, id == 31874))
[1] 15.40513
返回一个数字然后我可以返回转换。除了返回NaN的5个问题记录外,所有情况都是如此。
> 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.