Trabalhando com Datas — Pandas vs Polars

Publicado:
Atualizado:
PorJeferson Peter
1 min de leitura
Polars & Pandas
Compartilhe este post:

Conjuntos de dados quase sempre incluem timestamps. Tratar esses campos corretamente é essencial para a análise.
Tanto Pandas quanto Polars oferecem ferramentas para converter e formatar datas, mas com sintaxes diferentes.


Dados de exemplo

import pandas as pd
import polars as pl

dados = {"data": ["2025-01-01", "2025-02-15"]}
df_pd = pd.DataFrame(dados)
df_pl = pl.DataFrame(dados)

Convertendo para datetime

# Pandas
df_pd["data"] = pd.to_datetime(df_pd["data"])
print(df_pd)

#         data
# 0 2025-01-01
# 1 2025-02-15

# Polars
df_pl = df_pl.with_columns(pl.col("data").str.strptime(pl.Date, "%Y-%m-%d"))
print(df_pl)

# shape: (2, 1)
# ┌────────────┐
# │ data       │
# │ ---        │
# │ date       │
# ╞════════════╡
# │ 2025-01-01 │
# │ 2025-02-15 │
# └────────────┘

Extraindo partes da data

# Pandas
print(df_pd["data"].dt.month)

# 0    1
# 1    2
# Name: data, dtype: int32

# Polars
print(df_pl.with_columns(df_pl["data"].dt.month().alias("mes")))

# shape: (2, 2)
# ┌────────────┬─────┐
# │ data       ┆ mes │
# │ ---        ┆ --- │
# │ date       ┆ u32 │
# ╞════════════╪═════╡
# │ 2025-01-01 ┆ 1   │
# │ 2025-02-15 ┆ 2   │
# └────────────┴─────┘

Conclusão

  • Pandas: pd.to_datetime e o acessor .dt para partes da data.
  • Polars: .str.strptime() para parsing e .dt para componentes.
  • Ambos são poderosos — o Polars foca em performance e parsing explícito.
Compartilhe este post: