Выбрать/фильтровать определенный набор строк из столбца списка в PolarsPython

Программы на Python
Ответить
Anonymous
 Выбрать/фильтровать определенный набор строк из столбца списка в Polars

Сообщение Anonymous »

Я хочу выбирать из столбца списка только строки, заканчивающиеся на .xml.
import polars as pl

pl.Config(fmt_table_cell_list_len=6, fmt_str_lengths=100)

df = pl.DataFrame({'list_column': [['a.xml', 'b.xml', 'c', 'd'], ['e.xml', 'f.xml', 'g', 'h']]})

df

shape: (2, 1)
┌──────────────────────────────┐
│ list_column │
│ --- │
│ list[str] │
╞══════════════════════════════╡
│ ["a.xml", "b.xml", "c", "d"] │
│ ["e.xml", "f.xml", "g", "h"] │
└──────────────────────────────┘

Есть ли способ добиться того же без использования map_elements?
def func(x):
return [y for y in x if '.xml' in y]

df.with_columns(pl.col('list_column').map_elements(func, return_dtype=pl.List(pl.String)))

shape: (2, 1)
┌────────────────────┐
│ list_column │
│ --- │
│ list[str] │
╞════════════════════╡
│ ["a.xml", "b.xml"] │
│ ["e.xml", "f.xml"] │
└────────────────────┘


Подробнее здесь: https://stackoverflow.com/questions/785 ... -in-polars
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»