typestar

El motor perezoso en Python

Un LazyFrame arma un plan; collect lo corre después de que el optimizador lo reescribe.

import polars as pl

tabla = pl.DataFrame({
    "lang": ["python", "rust", "sql", "css"],
    "tpm": [104, 98, 79, 70],
    "note": ["a", "b", "c", "d"],
})

plan = (tabla.lazy()
        .filter(pl.col("tpm") > 80)
        .select("lang", "tpm")
        .sort("tpm", descending=True))

print(plan.explain())
print(plan.collect())

Cómo funciona

  1. explain imprime el plan y muestra los filtros empujados hacia abajo.
  2. El pushdown de proyección lee solo las columnas que usas.
  3. Las respuestas eager y lazy son idénticas por construcción.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
15
Caracteres a escribir
293
Tokens
132
Ritmo de tres estrellas
115 tpm

Al ritmo de tres estrellas de 115 tokens por minuto, este intento toma unos 69 segundos.

Escribe este fragmento

Paso 2 de 4 en Lazy y SQL; paso 26 de 32 en Polars.

← Anterior Siguiente →