How you can write a dataframe-agnostic library
summary
Demonstrates a concrete path to accept pandas, Polars and others without forcing conversion by using the DataFrame Interchange Protocol and a lightweight adapter called Narwhals that translates a small Polars-like API back to the native engine. Gives a measured example where a native Polars operation runs ~4 ms but the convert-to-pandas route is 4 ms vs 30–40× slower. Shows a live-coded Narwhals wrapper that keeps computation lazy, preserves GPU execution and has zero required dependencies, and it works on the Titanic demo.
AI-written summary · about
chapters (10)
- 0:00Introduction and welcome
- 2:36Why many dataframe libraries exist
- 6:51Problems with pandas-only support
- 9:15Convert to pandas approach
- 11:47Introducing Narwhals solution
- 12:54Live coding with audience questions
- 18:13Narwhals in action demo
- 21:45Narwhals API coverage and adoption
- 24:13Summary and key takeaways
- 25:58Q&A session
related talks
29mHow Narwhals is silently bringing pandas, Polars, DuckDB, PyArrow, and more together
36mHow Narwhals brings Polars, DuckDB, PyArrow, & pandas together
28mExpressive & fast dataframes in Python with polars
58mFrom Pandas to Polars Upgrading Your Data Workflow
30mIs the great dataframe showdown finally over? Enter: polars
01h 32mAn Introduction to Polars
38mExpressive and fast dataframes in Python with polars
34mBridging Pandas and Polars
