add error and warning on new factor levels for prediction #2794
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
General problem: New factor levels appeared during prediction.
Behaviour:
fix.factors.prediction = TRUE
will convert new factors to NAsConcrete problem: There is no warning that this happens.
More concrete problem: Some learners (eg. ksvm) will just drop rows with NAs in prediction, leading to fewer predictions than in newdata. (#2771)
Less heavy problem: Some learners (eg. ranger) will complain about NAs, but the user does not now where these are comming from (#2611)
Solution: Create a warning, when NAs are created, throw an error if prediction has not the right number of items. Both in combination will hopefully give the user a clue of what is happening.
Also related: #2602