Polars's Avatar

Polars

@pola.rs

Dataframes powered by a multithreaded, vectorized query engine, written in Rust.

988
Followers
3
Following
63
Posts
18.11.2024
Joined
Posts Following

Latest posts by Polars @pola.rs

Post image

pl.from_repr() constructs a DataFrame or Series directly from its printed string representation. This can be useful in unit tests: instead of rebuilding expected DataFrames through dictionaries with typecasting, the schema is encoded in the header and the values are right there in the table.

26.02.2026 15:22 πŸ‘ 4 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Orchestrating Polars Cloud Queries with Apache Airflow DataFrames for the new era

Easily scale Polars queries from Airflow.

Our latest blog post walks through different patterns to run distributed Polars queries using Airflow: fire-and-forget execution, parallel queries, multi-stage pipelines, and manual cluster shutdowns.

Read more here: pola.rs/posts/airflo...

17.02.2026 14:26 πŸ‘ 4 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

str.len_bytes() vs str.len_chars()

len_bytes: ~20x faster, counts UTF-8 bytes
len_chars: counts actual Unicode characters

- Use len_bytes for ASCII data (IDs, hashes)
- Use len_chars for anything multilingual

len_bytes is O(1) metadata lookup, len_chars is O(n) traversal.

13.02.2026 11:25 πŸ‘ 12 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0
Preview
Release Python Polars 1.38.0 Β· pola-rs/polars ⚠️ Deprecations Deprecate retries=n in favor of storage_options={"max_retries": n} (#26155) πŸš€ Performance improvements Enable zero-copy object_store put upload for IPC sink (#26288) Resolve file...

We've released Python Polars 1.38. Some of the highlights:

β€’ (De)Compression support on text based sources and sinks
β€’ scan_lines() to read text files
β€’ Merge join in the Streaming engine

Link to the complete changelog: github.com/pola-rs/pola...

05.02.2026 15:15 πŸ‘ 9 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

We refactored the Categorical in 1.31.

The new Categories object gives you:
β€’ Control over the physical type (UInt8/16/32)
β€’ Named categories with namespaces
β€’ Parallel updates without locks
β€’ Automatic garbage collection

Full read: pola.rs/posts/catego...

03.02.2026 15:11 πŸ‘ 5 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

In 1-2 weeks we land live query profiling in Polars Cloud.

See exactly how many rows are consumed and produced per operation. Which operation takes most runtime, and watch the data flow through live, like water. 😍

02.02.2026 14:43 πŸ‘ 9 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

Looks like me and @eadehemingway.bsky.social are going to be running a workshop on data analysis with @pola.rs at NICAR in March. Maybe see some of you there!

01.02.2026 16:50 πŸ‘ 11 πŸ” 4 πŸ’¬ 1 πŸ“Œ 0
Post image

We just released Polars 1.37, here are the highlights:

Improved Streaming Sinks: 1.14x-1.88x speedup, ~10% of the original memory.
Streaming Compressed CSVs
Faster SQL Ordering
pl.PartitionBy
min_by / max_by (see below)
Series.sql()
Free-Threading Support
Python 3.9 Support Dropped
musl Builds

13.01.2026 15:03 πŸ‘ 14 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0
Post image

Did you know about pl.corr()?

The problem with data aggregation is that it can hide what's really going on.

Below you can find Simpson's Paradox

Sometimes the devil really is in the details.

18.12.2025 15:25 πŸ‘ 7 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

"We adopted Polars to meet strict technical requirements, but the result went beyond simple optimization. The 30x performance improvement gave us the unexpected opportunity to do more."

Read about how Rabobank deployed Polars in a critical enterprise production environment: lnkd.in/eZFPcxRw

11.12.2025 15:01 πŸ‘ 6 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

We've just released 1.36.0. Here are the highlights:

Highlights:
🧩 Extension Types
πŸ›Ÿ Float16 Support
β†ͺ️ LazyFrame.pivot()
πŸ‘€ DataFrame.show()
πŸ—„οΈ SQL Parity: Added Window functions
⏱️ Parquet writer: 2.2x runtime improvement

Find the full release notes here: github.com/pola-rs/pola...

09.12.2025 15:04 πŸ‘ 19 πŸ” 1 πŸ’¬ 3 πŸ“Œ 0
Preview
Polars in Aggregate: Polars Cloud, Streaming engine, and New Data Types DataFrames for the new era

It’s been a year since the last Polars in Aggregate. Since then, we've shipped 37 releases, merged over 2,300 PRs, and built two new engines.

Here are the biggest highlights:
☁️ Polars Cloud is Live
πŸš€ Next-Gen Streaming engine.
πŸ”’ Stable Decimals & Int128
and more

pola.rs/posts/polars...

03.12.2025 15:00 πŸ‘ 8 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Supercharging Analytics with Polars: A Case Study in Analyst Empowerment DataFrames for the new era

Citizens cut query times from 80 to 8 minutes by adopting Polars, but the transformation went beyond speed. It provided a "grammar of business logic, improving maintainability and unlocking complexity without heavy backend engineering.

Read the full case study here: pola.rs/posts/case-c...

26.11.2025 15:55 πŸ‘ 6 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Code example of the Decimal type

Code example of the Decimal type

Polars recently shipped some performance upgrades and long-awaited features:

πŸ† Decimal Type Now Stable
πŸ† Aggregation over the List and Array Types

✨Other new features:
Streaming ewm_mean()
Expr.item()
Expr.rolling_rank()
pl.union()

Read more: github.com/pola-rs/pola...

19.11.2025 12:52 πŸ‘ 10 πŸ” 0 πŸ’¬ 2 πŸ“Œ 0
Polars Meetup #3 - Polars x Dataframely by Oliver Borchert and Daniel Elsner
Polars Meetup #3 - Polars x Dataframely by Oliver Borchert and Daniel Elsner YouTube video by Polars

At the recent Polars meetup, Oliver & Daniel discussed how they migrated a pandas + SQL to Polars using Dataframely:

- 22x speedup
- 3x lower memory
- 50% code reduction
- Native dataframe validation with minimal overhead using Dataframely

Watch: www.youtube.com/watch?v=TL-3...

14.10.2025 12:46 πŸ‘ 5 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Polars helps coping with black swan events at La Mobilière DataFrames for the new era

Swiss insurer La Mobilière refactored their risk model to Polars, achieving 5-10x speedups and enabling actuaries to run millions of simulation years on laptops. A scale previously unfeasible with pandas due to memory and single-core limitations.

pola.rs/posts/case-m...

09.10.2025 11:02 πŸ‘ 8 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
Polars raises €18M Series A to build fast, ergonomic data processing at any scale DataFrames for the new era

We raised €18M in Series A led by Accel to build fast data processing at any scale. All on Polars.

pola.rs/posts/series...

29.09.2025 15:19 πŸ‘ 10 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Polars Meetup #3 - Vectorized Parquet by Gijs Burghoorn
Polars Meetup #3 - Vectorized Parquet by Gijs Burghoorn YouTube video by Polars

The recordings of our third meetup are now available on Youtube!

Watch the session of Gijs Burghoorn, core developer @ Polars, here: youtu.be/xc5IsfwKRKE. In his talk he discussed how and why we optimize our Parquet reader.

25.09.2025 14:08 πŸ‘ 9 πŸ” 1 πŸ’¬ 2 πŸ“Œ 0
Preview
Release Polars Cloud Client 0.3.0 Β· pola-rs/polars-cloud-client πŸ’₯ Breaking changes Remove partitioned_by execution ✨ Enhancements Plan query on worker nodes Implement partition sink file path callback Add shuffle write data to observatory 🐞 Bug fixes Harde...

Polars Cloud client 0.3.0 is released.

You can now spawn >100k queries to a single cluster and we load balance them gracefully. Additionally, the query planning now is posted as a worker task and can be cancelled by the user.

github.com/pola-rs/pola...

22.09.2025 10:17 πŸ‘ 3 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0
Preview
Polars at Decathlon: Ready to Play? DataFrames for the new era

@decathlonfrance.bsky.social has adopted Polars across many workloads, reducing infrastructure complexity and overhead by running workloads on single machines instead of compute clusters.

Learn more in the case study: pola.rs/posts/case-d...

15.09.2025 12:13 πŸ‘ 20 πŸ” 3 πŸ’¬ 3 πŸ“Œ 0
Preview
Launch of Polars Cloud and Distributed Polars DataFrames for the new era

Today we launch Polars Cloud and the Public Beta of our Distributed Engine.

Read the post to get started!

pola.rs/posts/polars...

03.09.2025 11:39 πŸ‘ 12 πŸ” 1 πŸ’¬ 0 πŸ“Œ 1
Preview
Polars Meetup #3 - Vectorized Parquet and Dataframely, Wed, Sep 17, 2025, 6:00 PM | Meetup On September 17, 2025, we organize our third meetup! This time we will be in **Munich** for an **in-person event.** The sessions will be recorded and shared afterwards. We

It is almost time for the 3rd official Polars meetup! The next meetup will take place on the 17th of September in Munich, Germany.

There will be a talk the Polars team and a community talk. It is also the perfect place to meet fellow Polars users.

RSVP here: www.meetup.com/polars-meetu...

29.08.2025 11:00 πŸ‘ 6 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Free DataCamp course announcement - Learn Polars, the high-performance data processing library that engineers love. Interactive Introduction to Polars course available at no cost. Partnership between DataCamp and Polars.

Free DataCamp course announcement - Learn Polars, the high-performance data processing library that engineers love. Interactive Introduction to Polars course available at no cost. Partnership between DataCamp and Polars.

Are you looking to get started with Polars over the summer?

We've partnered with @datacamp.bsky.social to create an interactive course that covers the fundamentals so you can write your next query with Polars.

The course is free till the end of August: www.datacamp.com/courses/intr...

13.08.2025 15:10 πŸ‘ 11 πŸ” 5 πŸ’¬ 0 πŸ“Œ 0

Polars 1.32, a thread...

11.08.2025 15:04 πŸ‘ 9 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Polars Meetup #3 - Vectorized Parquet and Dataframely, Wed, Sep 17, 2025, 6:00 PM | Meetup On September 17, 2025, we organize our third meetup! This time we will be in **Munich** for an **in-person event.** The sessions will be recorded and shared afterwards. We

The third Polars Meetup is confirmed! On 17 September, we will organize the next in-person meetup at @quantco.com in Munich, Germany.

Topics:
- Parquet reader improvements
- Migrating pipelines using Dataframely, Quantco's open-sourced schema validation tool.

RSVP: www.meetup.com/polars-meetu...

05.08.2025 12:27 πŸ‘ 4 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Polars Meetup #2 - Polars at Scale by Ritchie Vink
Polars Meetup #2 - Polars at Scale by Ritchie Vink YouTube video by Polars

The videos of our recent San Francisco meetup are in!

- Ritchie Vink covered the new streaming engine and shared updates on Polars Cloud and the upcoming distributed engine.

- Vyas Ramasubramani shared how GPU accelerated Polars works.

youtube.com/watch?v=fYi9...

youtube.com/watch?v=fYi9S6

31.07.2025 14:38 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Technology | 2025 Stack Overflow Developer Survey

"Came for the speed, stayed for the syntax." Once users have learned our API, they love it. And it shows.

Polars is the 3rd most admired rising tech in this years StackOverflow developer survey.

survey.stackoverflow.co/2025/technol...

30.07.2025 15:36 πŸ‘ 13 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Release Python Polars 1.32.0-beta.1 Β· pola-rs/polars πŸ† Highlights Make Selector a concrete part of the DSL (#23351) Rework Categorical/Enum to use (Frozen)Categories (#23016) πŸš€ Performance improvements Lower Expr.slice to streaming engine (#23683)...

The pre-release of polars 1.32 is out. This is a big release with a lot of internal improvements.

Please consider trying it so that we can patch any regression before we ship the release next week.

github.com/pola-rs/pola...

28.07.2025 16:20 πŸ‘ 6 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Demo of Formulaic with native Polars support

Demo of Formulaic with native Polars support

✨ New Formulaic release (1.2), featuring native support for @pola.rs !

πŸŒŠπŸ¦„ Powered by Narwhals

15.07.2025 18:40 πŸ‘ 10 πŸ” 2 πŸ’¬ 1 πŸ“Œ 1
Preview
Polars Meetup - Polars Cloud and Acceleration Β· Luma Join the second edition of our Polars Meetup with talks from Ritchie Vink (Polars) and Vyas Ramasubramani (NVIDIA) to discuss accelerating and scaling…

We're hosting our second meetup in San Francisco on July 24th.

Ritchie Vink will introduce Polars Cloud, the platform to scale Polars remotely. Vyas Ramasubramani from NVIDIA will be talking about the internals of accelerating your Polars queries with the GPU engine.

RSVP: lu.ma/60b6wfs8

08.07.2025 18:05 πŸ‘ 3 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0