Skrub

@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

✨ Skrub version 0.10.0 has been released ✨ This is one of our biggest releases yet, with new transformers, improvements to the TableReport and the Data Ops, bug fixes and polishing of the docs. github.com/skrub-data/s... 🚀 Highlights below

Release 0.10.0 · skrub-data/skrub

✨ Skrub version 0.10.0 has been released ✨ Main Changes New transformers are now available: SessionEncoder groups timestamped data by sessions, DropSimilar helps with dropping redundant columns. T...

github.com

✨ Skrub version 0.9.0 has been released ✨ This release adds some advanced features to the Data Ops, the has_dtype() selector, as well as some clarity improvements for the Cleaner and TableReport. Release post: github.com/skrub-data/s...

Release 0.9.0 · skrub-data/skrub

✨ Skrub version 0.9.0 has been released ✨ Main changes Scorers used by Data Ops can now take additional arguments (like sample weights). By @jeromedockes in #1995 The new methods .skb.find() and ....

github.com

✨ skrub version 0.8.0 has been released ✨ This version includes several new features, including multiple improvements to the functionality and performance of the Data Ops, along with a few bug fixes and improvements to the docs. Changelog: skrub-data.org/stable/CHANG... Highlights below ⤵️

Release history

Release 0.8.0: New Features: The eager_data_ops configuration option has been added. When set to False, no previews are computed and validation is deferred until the DataOp is actually used (e.g. w...

skrub-data.org

While skrub Data Ops shine when preparing dataframes, their capabilities extend beyond that. For example, they can be used alongside libraries like PyTorch and skorch to work with images, and tune the model size to find the best set of hyperparameters: skrub-data.org/stable/auto_...

Using PyTorch (via skorch) in DataOps

This example shows how to wrap a PyTorch model with skorch and plug it into a skrub DataOps plan. The main goal here is to show the integration pattern: PyTorch defines the model (an nn.Module), sk...

skrub-data.org

Did you know that the skrub Data Ops support Optuna as backend to run hyperparameter search? It's as easy as writing "backend='optuna'": this will set up a default Optuna study (and the TPE sampler) to replace the standard random sampler.

Three snippets of python code showing how to use skrub Data Ops with the Optuna optimization library.The first snippet shows a standard randomized search with the Data Ops. The second snippet adds the parameter "backend", which is set to "optuna". The third snippet uses the Optuna visualization API to plot information from the study.

Skrub 0.7.0 is here! 🎉 ✨ Main highlights: - Tune hyperparameter choices with Optuna - Added support for Pandas 3.0 - Estimators in data ops can now take additional kwargs 16 new contributors helped with this release 👥 Check out the full changelog: github.com/skrub-data/s...

Release Skrub release 0.7.0 · skrub-data/skrub

Release 0.7.0 ✨ Highlights Data Ops can now be tuned with Optuna. It is now possible to pass extra named arguments to an estimator through DataOps.skb.apply. The TableReport now supports numpy arr...

github.com

Skrub includes a powerful set of transformers and selectors that allow to transform columns based on various conditions. ApplyToCols lets you select a subset of columns in your dataframe, then applies a transformer to each selected column separately.

Bild

On vous a déjà dit que Skrub c'est cool ? Et que l'intervention de @riccardocappuzzo.com était très chouette ? Hein, on vous l'a dit ? skrub-data.org/skrub-materi...

Skrub learning materials – Skrub

skrub-data.org

Skrub@skrub-data.bsky.social · 10mo ago

@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.

The skrub sticker on the back of a laptop

📅 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!

Compute! Paris@computeparis.bsky.social · 12mo ago

📢 Talk Announcement "Skrub: machine learning for dataframes", by Guillaume Lemaitre, Jérôme Dockès and @riccardocappuzzo.com. @skrub-data.bsky.social 📜 Talk info: pretalx.com/pydata-paris-2025/talk/T9KTPU 📅 Schedule: pydata.org/paris2025/schedule 🎟 Tickets: pydata.org/paris2025/tickets

skrub 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.

Bild

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.

Olivier Grisel@ogrisel.bsky.social · 12mo ago

Attending the @skrub-data.bsky.social tutorial by @riccardocappuzzo.com and @glemaitre58.bsky.social at #EuroScipy2025. They introduce the new DataOps feature released in skrub 0.6. Here is the repo with the material for the tutorial: github.com/skrub-data/E...

Photo of Riccardo presenting skrub DataOps in a lecture room to an audience of ~50 people.

⚡ Release 0.6.0 is now out! ⚡ 🚀 Major update! Skrub DataOps, various improvements for the TableReport, new tools for applying transformers to the columns, and a new robust transformer for numerical features are only some of the features included in this release.

Bild

👀 This week's post will be another sneak peek into skrub expressions, an upcoming feature that will ease the preparation and execution of machine learning pipelines on dataframes. This time we will focus on how expressions can simplify the construction of complex hyperparameter grids.

Bild

📝 The skrub TextEncoder brings the power of HuggingFace language models to embed text features in tabular machine learning, for all those use cases that involve text-based columns.