New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ENH] set ForecastX
missing data handling tag to True
to properly cope with future unknown variables
#4876
Conversation
quick merge for release - minimal change so not very risky |
@fkiraly Not opposing the merge (at least not yet), but asking for a clarification about the tag below. Based on # handles-missing-data = can estimator handle missing data?
"handles-missing-data": False,
# valid values: boolean True (yes), False (no)
# if False, raises exception if y or X passed contain missing data (nans) (If it's not the official tag reference for users or for developers, kindly share the proper reference.) From the tag definition above, I interpret that if it's set as True, it should be able to handle missing value in either So, based on my interpretation, either addition of this tag gives a possibly wrong information to users, or the tag definition is not quite clear. Can you please confirm which one is it? Or, if I'm just completely off, please let me know. |
@yarnabrina, happy to unmerge this - my quick merge was based on that it is functionally inconsequential in cases that work as present, while unlocking what I felt was a common use case, important enough to have it in the release quickly. To reply to your points:
The answer to your "confirm which one is it":
|
I understand your point of allowing as much as possible to the composite estimators in order to not avoid failures from composite logic and leave that to the actual non-composite estimators. It makes sense, and so there's no need to unmerge. However, personally I'd like no tags at all for composites in that case, as you said it doesn't make sense. I do not have any idea as of now on how to achieve that based on current base classes, so let's keep it as is. If I can think of anything, will create a new design issue later for discussion. |
I think that's stronger than the statement I wanted to make. What I tried to convey: the properties the tags indicate may depend on parameters (but that does not make them nonsensical overall) The current design tries to set the tags dynamically, based on the parameters, for objects, and leaves the tag at the most general setting for classes.
Ok, would be appreciated - I think it's an interesting question. Though that concludes the discussion for this PR at least as far as I understand. |
This PR sets the
ForecastX
missing data handling tag toTrue
to properly cope with future unknown variables.An edge case - or, arguably, a general case if none of the future variables are known - is showcased in this issue discussion:
#4848
More precisely,
ForecastX
should always allow fornans
in futureX
, as these may be in places where there is genuinely no knowledge about the future. Alternatively, dummy values have to be provided which sounds odd.FYI @davidgilbertson