Slides:
skrub-data.org/skrub-materi...
@skrub-data.bsky.social
skrub is a Python library to ease preprocessing and feature engineering for tabular machine learning. Our long-term goal is to directly connect database tables to machine learning estimators. https://skrub-data.org https://discord.gg/ABaPnm7fDC
Slides:
skrub-data.org/skrub-materi...
Thanks to @riccardocappuzzo.com , @glemaitre58.bsky.social and Jérôme Dockès for preparing the talk, and mentoring at the sprint!
07.10.2025 14:36 β π 0 π 0 π¬ 1 π 0The sprint was also a big hit, with both new and old contributors working on issues and getting to know the repository.
And to cap it all off, thanks to P16 we have stickers now π
The skrub sticker on the back of a laptop
@pydataparis.bsky.social 2025 is over, and it was a big success!
Our talk was very well received, and we got a lot of great questions, especially about scalability and how to interface with other libraries in production environments.
What a banger is skrub @skrub-data.bsky.social !
Big thumbs up for the sklearn team & the maintainer of this package
π
Less than a week away! The talk will be on Oct 1st at 10.05AM in room Louis Armand 1 - Est.
If you want to contribute to skrub, we will also have a sprint on Thursday.
See you there!
π οΈ Main bugfixes
- Fixed the display of DataOp objects in Google Colab cell outputs.
- Fixed the range from which choose_float and choose_int sample values when log=False and n_steps is None.
- The SkrubLearner used to do a prediction on the train set during fit(), this has been fixed.
π Changes and deprecations
- Ken embeddings are now deprecated.
- The accepted values for the parameter how of .skb.apply() have changed. The new values are "auto", "cols", "frame", and "no_wrap".
- The parameter splitter of .skb.train_test_split() has been renamed split_func.
π New features
- The DataOp.skb.full_report() now displays the time each node took to evaluate.
- The User guide has been reworked and expanded.
β‘ Release 0.6.2 is out β‘
github.com/skrub-data/s...
Reminder: skrub == cool
12.09.2025 13:34 β π 8 π 4 π¬ 0 π 0Here's another example on how to tune ML models with skrub Data Ops: skrub-data.org/stable/auto_...
12.09.2025 12:56 β π 1 π 0 π¬ 1 π 0The plot in the video was created for our EurosciPy 2025 tutorial on forecasting time series: skrub-data.org/EuroSciPy202...
12.09.2025 12:56 β π 1 π 1 π¬ 1 π 0The plot is interactive: you can select a range of results, and it will highlight only the runs within that range, enabling you to refine your search further. It also tracks fit and score times, so you can identify which parameters most impact runtime.
12.09.2025 12:56 β π 0 π 0 π¬ 1 π 0skrub DataOps help you construct complex and extensive hyperparameter search spaces. However, interpreting results from large grids can be challenging.
To address this, skrub generates a parallel coordinate plot that visualizes all runs and the parameters used to achieve specific results.
Do you have to deal with numerical features that involve large outliers, and need to train linear models or neural networks?
Then you might want to try the skrub SquashingScaler. The SquashingScaler behaves like scikit-learn RobustScaler, but smoothly clips outliers to predefined boundaries.
Our first talk tonight is from @gaelvaroquaux.bsky.social on @skrub-data.bsky.social.
Real tables are too messy for sklearn - skrub preprocesses them for you.
Had a great PyData London tonight! Was a real treat to hear from @gaelvaroquaux.bsky.social on @skrub-data.bsky.social and the real world data pains its solving. (Try it if you havenβt already; super easy to get going!)
03.09.2025 00:06 β π 3 π 1 π¬ 0 π 0β‘Maintenance release β‘
Release 0.6.1 fixes a bug that may happen when combining certain column-based skrub transformers with the scikit-learn ColumnTransformer.
github.com/skrub-data/s...
We had a great tutorial at #EuroScipy2025!
We had the opportunity of showing off the features of skrub to a wide audience, and show how they can be used in a pretty complex use case.
And even more changes and improvements!
We hope you enjoy the new release, and if you do, don't forget to π the repo π
github.com/skrub-data/s...
π’ We changed the default high cardinality encoder: now the StringEncoder is used as high cardinality encoder by default.
skrub-data.org/stable/refer...
βοΈ A global Skrub config has been introduced, which allows to set a number of parameters to customize the behavior of Skrub.
skrub-data.org/stable/refer...
ποΈ DropUninformative is a transformer that uses various heuristics to remove columns that are unlikely to bring information for training a model.
skrub-data.org/dev/referenc...
π The SquashingScaler has been added: it robustly rescales and smoothly clips numerical columns, enabling more robust handling of numerical columns with neural networks.
skrub-data.org/dev/auto_exa...
π οΈ selectors, ApplyToCols and ApplyToFrame are now available, providing utilities for selecting columns to which a transformer should be applied in a flexible way.
skrub-data.org/dev/auto_exa...
π The TableReport has been improved with many new features: series are now supported directly, it is possible to skip generating plots when the number of columns in the dataframe exceeds a user-defined threshold. Columns with high cardinality and sorted columns are now highlighted.
24.07.2025 15:55 β π 0 π 1 π¬ 1 π 0Get started with DataOps in the user guide:
skrub-data.org/dev/userguid...
Form complex DataOps plans to train and tune machine learning models, then export the plans as learners, standalone objects that can be used on new data.
Tune hyperparameters where they're defined, and explore the resulting space with a parallel coordinate plot