Операция над всеми столбцами типа в современных полярахPython

Программы на Python
Ответить
Anonymous
 Операция над всеми столбцами типа в современных полярах

Сообщение Anonymous »

У меня есть фрагмент кода, который работает в Polars 0.20.19, но я не знаю, как заставить его работать в Polars 1.10.
Рабочий код (в Polars 0.20 .19) очень похоже на следующее:

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

def format_all_string_fields_polars() -> pl.Expr:
return (
pl.when(
(pl.col(pl.Utf8).str.strip().str.lengths() == 0) | # ERROR ON THIS LINE
(pl.col(pl.Utf8) == "NULL")
)
.then(None)
.otherwise(pl.col(pl.Utf8).str.strip())
.keep_name()
)

df.with_columns(format_all_string_fields_polars())
Я преобразовал тип d pl.Utf8 в pl.String, но он продолжает выдавать ту же ошибку:
< blockquote>
AttributeError: объект «ExprStringNameSpace» не имеет атрибута «strip».

Предполагается, что функция выполняет операцию «Когда-то» операция над всеми строковыми полями фрейма данных на месте, но возвращает все столбцы в фрейме данных (включая нестроковые столбцы).
Как преобразовать эту функцию в рабочий фрагмент кода в Polars 1.10?

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

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

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

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

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

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