Repository navigation
[BUG] fix predict_quantiles default from predict_interval mixing up variables for multioutput y - #1211
Merged
fkiraly merged 2 commits intoOct 11, 2026
Conversation
VividhDesign
requested review from
felipeangelimvieira and
fkiraly
as code owners
October 11, 2026 02:56
1 task done
Contributor
Author
|
Update, following @fkiraly's review on sktime/sktime#11424:
Tests pass with current deps ( (AI-assisted; reviewed and tested by me.) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Reference Issues/PRs
Same bug as sktime/sktime#11423, fixed in sktime/sktime#11424. Opened following @fkiraly's review there, which pointed out that
skprohas identical code. Fixes #1212.What does this implement/fix? Explain your changes.
In
BaseProbaRegressor._predict_quantiles, when only_predict_intervalis implemented, quantiles were assigned to the wrong variables for multioutputy.Now, for each alpha, the lower or upper end is selected by label (
xs), and the columns are then reordered to variable-major order by position. This stays in pandas, so the dtypes returned by_predict_intervalare preserved. That matters for pandas 2.0: going through.valuesturns nullableFloat64columns intoobject, which broke the first version of the sktime PR on the old dependency set.No skpro estimator currently hits this, since the interval-only regressors (MAPIE adapters) are single-output. It does affect any multioutput regressor that implements only
_predict_interval.Does your contribution introduce a new dependency? If yes, which one?
No.
What should a reviewer concentrate their feedback on?
The rewritten block in
skpro/regression/base/_base.py.Did you add any tests for the change?
Yes,
skpro/regression/tests/test_quantiles_from_interval.py. It uses a dummy 3-output regressor with known per-variable interval widths, and fails on main.Passing locally:
skpro/regressionandskpro/metrics(819 tests), with the current dependencies;test_all_regressorsplus the new test (540 tests), on the 2023-07 set (pandas 2.0.3, numpy 1.25.0, scikit-learn 1.3.0).Any other comments?
(AI-assisted; reviewed and tested by me.)
PR checklist