Create Polars DataFrames: Dict, NumPy, Pandas, pyreadstat

Build a Polars DataFrame from a dict, NumPy arrays, a Pandas frame, or SPSS and SAS files via pyreadstat. Every conversion, with copy-paste examples.

1 min read

Create Polars DataFrames: Dict, NumPy, Pandas, pyreadstat cover

Data comes from everywhere: a quick dict, NumPy arrays, an existing Pandas frame, or a stats file. Polars converts from all of them directly. Here is every path into a Polars DataFrame.

From a Python dict

The fastest way to hand-build a frame. Keys become column names, lists become columns.

  • import polars as pl

  • df = pl.DataFrame({"a": [1, 2, 3], "b": ["x", "y", "z"]})

  • # or from a list of row dicts:

  • df = pl.from_dicts([{"a": 1, "b": "x"}, {"a": 2, "b": "y"}])

From NumPy arrays

Pass a 2D array with a schema for the column names, or build columns from separate 1D arrays with a dict.

  • import numpy as np

  • arr = np.array([[1, 2], [3, 4], [5, 6]])

  • df = pl.from_numpy(arr, schema=["a", "b"])

  • # from separate 1D arrays:

  • df = pl.DataFrame({"a": np.arange(3), "b": np.random.rand(3)})

From a Pandas DataFrame

One call, and it keeps your column names and types. Use this to move a hot path from Pandas to Polars.

  • df = pl.from_pandas(pandas_df)

  • # go back when a library needs Pandas:

  • pandas_df = df.to_pandas()

From SPSS or SAS files with pyreadstat

Polars does not read .sav or .sas7bdat directly. Read them with pyreadstat into a Pandas frame first, then convert. This is how you turn a pyreadstat DataFrame into a Polars DataFrame.

  • import pyreadstat

  • pdf, meta = pyreadstat.read_sav("survey.sav") # or read_sas7bdat(...)

  • df = pl.from_pandas(pdf)

Grab a single value

To pull one scalar out of a frame, use .item. This answers getting a DataFrame item in Polars.

  • value = df.select("a").item(0, 0)

  • # or the single value of a 1x1 result:

  • total = df.select(pl.col("a").sum()).item()

From here you will want to filter rows and read and write files. The full reference lives in the Python Polars cheat sheet.

Building something with AI? Let's talk.

I design and ship production AI and full-stack products for US teams. See how I can help.

View all services

Join the newsletter

Be the first to read our articles.