У меня есть простой pl.DataFrame с несколькими столбцами, содержащими только логические значения.
import polars as pl
df = pl.DataFrame(
{"s1": [True, True, False], "s2": [False, True, True], "s3": [False, False, False]}
)
shape: (3, 3)
┌───────┬───────┬───────┐
│ s1 ┆ s2 ┆ s3 │
│ --- ┆ --- ┆ --- │
│ bool ┆ bool ┆ bool │
╞═══════╪═══════╪═══════╡
│ true ┆ false ┆ false │
│ true ┆ true ┆ false │
│ false ┆ true ┆ false │
└───────┴───────┴───────┘
Мне нужно добавить еще один столбец, содержащий списки различной длины. Список в любой отдельной строке должен содержать имя столбца, где значения столбцов S1, s2 и s3 имеют значение True.
Вот что я на самом деле ищу:
shape: (3, 4)
┌───────┬───────┬───────┬──────────────┐
│ s1 ┆ s2 ┆ s3 │ list │
│ --- ┆ --- ┆ --- │ --- │
│ bool ┆ bool ┆ bool │ list[str] │
╞═══════╪═══════╪═══════╡══════════════╡
│ true ┆ false ┆ false │ ["s1"] │
│ true ┆ true ┆ false │ ["s1", "s2"] │
│ false ┆ true ┆ false │ ["s2"] │
└───────┴───────┴───────┴──────────────┘
Подробнее здесь: https://stackoverflow.com/questions/789 ... lumn-names