Как я могу использовать панд apply
для функции, которая требует расширения стандартного класса (datetime
)?
В частности, я хотел бы импортировать datetime_modulo
из превосходной сущности на https://gist.github.com/treyhunner/6218526.
Этот код расширяет стандартный класс datetime
, позволяя применять операцию по модулю к datetime
объектам, например,
from datetime_modulo import datetime
from datetime import timedelta
d = datetime.now()
print d % timedelta(seconds=60)
Теперь мне нужно apply
эту операцию по модулю для столбца / серии DataFrame pandas, например,
df['dates'] = pd.to_datetime(df.index.values)
df['datetime_mod'] = df['dates'].apply(lambda x: x % timedelta(minutes=15))
Но pandas не может обнаружить расширенный класс datetime (если я просто не использую его неправильно):
TypeError: unsupported operand type(s) for %: 'Timestamp' and 'datetime.timedelta'
Как продолжить?