Expresiones condicionales en Python
when/then/otherwise es el if vectorizado, y se encadena.
import polars as pl
tabla = pl.DataFrame({"tpm": [104, 88, 70, 96]})
calificada = tabla.with_columns(
pl.when(pl.col("tpm") >= 100).then(pl.lit(3))
.when(pl.col("tpm") >= 90).then(pl.lit(2))
.otherwise(pl.lit(1))
.alias("stars"),
pl.when(pl.col("tpm") > pl.col("tpm").mean())
.then(pl.lit("arriba"))
.otherwise(pl.lit("abajo"))
.alias("vs_mean"),
)
print(calificada)
Cómo funciona
- Cada
whenagrega una rama, probada en orden. otherwisees el respaldo y se requiere para cobertura total.- Toda la cadena es una expresión, así que corre por columnas.
Palabras clave y builtins usados aquí
asprint
El intento, en números
- Líneas
- 15
- Caracteres a escribir
- 368
- Tokens
- 164
- Ritmo de tres estrellas
- 105 tpm
Al ritmo de tres estrellas de 105 tokens por minuto, este intento toma unos 94 segundos.
Paso 4 de 4 en Expresiones; paso 8 de 32 en Polars.