Поляры применяют map_elements ко всем значениям (включая нули)Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Поляры применяют map_elements ко всем значениям (включая нули)

Сообщение Anonymous »

У меня есть столбец в наборе данных с нулевым значением (который нужно спрогнозировать) и некоторыми другими.
Я хотел создать столбец is_null, в котором указано, будет ли первый столбец значения столбца были нулевыми или нет (по элементам).
Я столкнулся с методом .map_elements, но он «пропустил» нулевые значения. Вот пример:

Код: Выделить всё

import polars as pl

df = pl.DataFrame({"foo": [1, None, 3], "bar": [-1, None, 8]})

# shape: (3, 2)
# ┌──────┬──────┐
# │ foo  ┆ bar  │
# │ ---  ┆ ---  │
# │ i64  ┆ i64  │
# ╞══════╪══════╡
# │ 1    ┆ -1   │
# │ null ┆ null │
# │ 3    ┆ 8    │
# └──────┴──────┘

def print_and_fill(value):
print("Value is", value)
return 1

df["foo"].map_elements(print_and_fill)

## Output ##
# Value is 1
# Value is 3

# shape: (3,)
# Series: 'bar' [i64]
# [
#   1
#   null
#   1
# ]
Очевидно, что нулевое значение было пропущено. Есть ли способ применить эту функцию ко всем значениям?
Я нашел обходной путь: мы можем временно .fill_null(), а затем вызвать .map_elements(), но это явно не лучшее решение.

Подробнее здесь: https://stackoverflow.com/questions/739 ... ding-nulls
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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