Skip to content

fix regression with set_output in scikit-learn < 1.4#1122

Merged
jeromedockes merged 3 commits intoskrub-data:mainfrom
jeromedockes:fix-set-output-skl-lt-1.4
Oct 22, 2024
Merged

fix regression with set_output in scikit-learn < 1.4#1122
jeromedockes merged 3 commits intoskrub-data:mainfrom
jeromedockes:fix-set-output-skl-lt-1.4

Conversation

@jeromedockes
Copy link
Member

OnEachColumn, when its transformer is a scikit-learn transformer exposing set_output, calls set_output('pandas') or set_output('polars') to get the output in the correct dataframe.

in old scikit-learn versions, set_output('polars') is not supported, so OnEachColumn does set_output('pandas') and later does the conversion itself with polars.from_pandas.

or at least it's supposed to -- when doing a small change in #973 to handle possible exceptions raised by set_output I forgot to copy the "else" part of the "if scikit-learn < 1.4" block so now it is always using "polars" even in scikit-learn versions that don't support it.

this pr fixes the regression

Copy link
Member

@Vincent-Maladiere Vincent-Maladiere left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @jeromedockes !

@jeromedockes
Copy link
Member Author

thanks for the review :) I'll merge it to unblock #1115

@jeromedockes jeromedockes merged commit 70174d3 into skrub-data:main Oct 22, 2024
@jeromedockes jeromedockes deleted the fix-set-output-skl-lt-1.4 branch October 22, 2024 09:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants