Дано: DataFrame `tx` с колонками `user_id`, `ts`, `amount` (отсортирован по user_id, ts). Для каждой строки посчитайте дни между текущей покупкой и предыдущей этого же юзера (NaN если первая покупка юзера). Верните DataFrame с колонкой `days_since_prev` (float, NaN или число дней). Сохраните в `result`.
Темы
shiftgroupbylagtime-since
Подсказки
shift(1) внутри groupby — это уже LAG(1) OVER (PARTITION BY user_id). Что выйдет, если просто tx["ts"].shift(1) без groupby?
Разность двух datetime даёт Timedelta. Какой аксессор отдаёт «количество дней»?