Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Data Analysis with Polars
Rating: 4.7 out of 5(609 ratings)
4,607 students

Data Analysis with Polars

"A thorough introduction to Polars" - Ritchie Vink, creator of Polars - over 3,000 learners to date!
Created byLiam Brannigan
Last updated 6/2025
English

What you'll learn

  • Taking advantage of parallel and optimised analysis with Polars
  • Working with larger-than-memory data
  • Using Polars expressions for analysis that is easy to read and write
  • Loading data from a wide variety of data sources
  • Combining data from different datasets using fast joins operations
  • Grouping and parallel aggregations
  • Deriving insight from time series
  • Preparing data for machine learning pipelines
  • Visualising data with Matplotlib, Seaborn, Altair & Plotly
  • Using Polars with Scikit-learn

Course content

9 sections65 lectures4h 46m total length
  • Course introduction1:38
  • Why use Polars instead of Pandas?4:05
  • How can you make best use of the course materials?1:03
  • Course materials1:14
  • Polars quickstart7:03

    Polars quickstart

    This video and notebook introduce some of the key concepts that make Polars a powerful data analysis tool.


    The key concepts we meet are:

    - fast flexible analysis with the Expression API in Polars

    - easy parallel computations

    - automatic query optimisation in lazy mode

    - streaming to work with larger-than-memory datasets in Polars


  • Lazy mode: Introducing lazy mode12:40

    Lazy mode 1: Introducing lazy mode


    Notebook: intro/02-EagerAndLazyPolars.ipynb

    By the end of this lecture you will be able to:

    - create a `LazyFrame` from a CSV file

    - explain the difference between a `DataFrame` and a `LazyFrame`

    - print the optimized query plan


  • Lazy mode: evaluating queries0:11

    Lazy mode 2: evaluating queries

    Notebook: intro/03-LazyPolarsEvaluating.ipynb


    By the end of this lecture you will be able to:

    - trigger evaluation of a `LazyFrame`

    - evaluate a `LazyFrame` in streaming mode

    - convert a `DataFrame` to a `LazyFrame`


    The notebook contains an additional section introducing streaming larger-than-memory queries.

  • Introduction to Data types3:22

    Data types & Apache Arrow

    Notebook: intro/04-DataTypesAndArrow.ipynb


    By the end of this lecture you will be able to:

    - get the data type schema of a `DataFrame`

    - get the data type of a `Series`

    - explain the relationship between Polars and Apache Arrow


    We cover data types in more detail in the Data Types and Missing Values section of the course.


  • Series and DataFrame4:49

    `Series` and `DataFrame`

    Notebook: intro/05-SeriesAndDataFrame.ipynb

    By the end of this lecture you will be able to:

    - create a `Series` from a `DataFrame` column

    - create a `Series` from a `list`

  • Converting to and from Pandas & Numpy8:15

    Conversion to & from Numpy and Pandas

    Notebook: intro/06-ConversionPandasNumpy.ipynb

    By the end of this lecture you will be able to:

    - convert between Polars and Numpy

    - convert between Polars and Pandas


  • Visualisation19:38

    By the end of this lecture on you will be able to:

    - create charts from Polars with the built-in plot method

    - configure charts created with the built-in plot method

    - create charts with external plotting libraries such as Matplotlib, Seaborn, Plotly and Altair


  • Lazy mode

Requirements

  • Computer with Windows/Linux/MacOS and a python installation

Description

In this course I show you how to take advantage of Polars - the fast-growing open source dataframe library that is becoming the go-to dataframe library for data scientists in python. I am a Polars contributor with a focus on making Polars accessible to new users and I keep this course up-to-date with new releases of Polars - updated to version 1.30.0


"A thorough introduction to Polars" - Ritchie Vink, creator of Polars


"Thank you for your great work with this course - I've optimized some code thanks to it already!" Maiia Bocharova


The course is for data scientists who have some familiarity with a dataframe library like Pandas but who want to move to Polars because it is easier to write and faster to run. The core materials are Jupyter notebooks that examine each topic in depth. Each notebook comes with a set of exercises to help you develop your understanding of the core concepts. For many key topics this course is the only source of documentation for learners and comes from my time examining the Polars source code.


An important note about videos: this is a primarily a notebook course and not a video course. Not all of the lectures have videos and some of the videos may have components that are not up-to-date. Why? Because the Polars API has changed too often to allow me to keep videos up-to-date. Instead I focus on keeping the notebooks up-to-date with an extensive automated testing system that alerts me to changes in the API. I release an updated version of the course about twice a month in response to changes in Polars.


The course introduces the syntax of Polars and shows you the many ways that Polars allows you to produce queries that are easy to read and write. However, the course also delves deeper to help you understand and exploit the algorithms that drive the outstanding performance of Polars.


By the end of the course you will have optimised ways to:

  • load and transform your data from CSV, Excel, Parquet, cloud storage or a database

  • run your analysis in parallel

  • understand optimal patterns for building queries

  • work with larger-than-memory datasets

  • carry out aggregations on your data

  • combine your datasets with joins and concatenations

  • work with nested dtypes including lists and structs

  • optimise the speed and memory usage of your queries

  • work with string and categorical data

  • visualise your outputs with Matplotlib, Seaborn, Plotly, hvPlot & Altair

  • prepare your data for machine learning pipelines with sklearn

Who this course is for:

  • Data scientists with no familiarity with Polars and want to get up and running
  • Data scientists with some familiarity with Polars but want a deeper understanding
  • Pandas or other dataframe library users