Значение истины для Expr неоднозначно в сфере экспансии на датахPython

Программы на Python
Anonymous
Значение истины для Expr неоднозначно в сфере экспансии на датах

Сообщение Anonymous »

Я пытаюсь учитывать использование комнаты только в рабочее время и сократить продолжительность события, если оно проходит через окончание рабочих часов. /p>

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

import polars as pl
from datetime import datetime

df = pl.DataFrame({
'name': 'foo',
'start': datetime.fromisoformat('2025-01-01 08:00:00'),
'end': datetime.fromisoformat('2025-01-01 18:00:00'), # ends after business hours
'business_end': datetime.fromisoformat('2025-01-01 17:00:00')
})
Я хочу создать столбец продолжительности, который равен End , если только это не Business_end иначе установлена ​​на Business_end . Для этого я попробовал следующее: < /p>
df.with_columns(
duration=pl.col("end") - pl.col("start")
if pl.col("end")
Это дает ошибку: < /p>

typeerror: значение истинного значения expr неоднозначно < /p>

Мысли о том, как создать желаемую строку из условной? Концы событий находятся после окончания бизнеса, создайте рамку из них, замените значение времени окончания, слияние обратно и т. Д. Но я надеялся сохранить исходные данные и добавить только новый столбец.


Подробнее здесь: https://stackoverflow.com/questions/794 ... n-on-dates

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