Estou tentando fazer basicamente o oposto de drop_nulls()
. Quero manter todas as linhas que tenham pelo menos um null
.
Quero fazer algo como (mas não quero listar todas as outras colunas):
for (name,) in (
df.filter(
pl.col("a").is_null()
| pl.col("b").is_null()
| pl.col("c").is_null()
)
.select("name")
.unique()
.rows()
):
print(
f"Ignoring `{name}` because it has at least one null",
file=sys.stderr,
)
df = df.drop_nulls()
Parece que você está procurando por
pl.Expr.any_horizontal
. O seguinte manterá todas as linhas contendo pelo menos um valor nulo (em qualquer uma das colunas).