Комментарии 4
Спасибо за статью. Вопрос по твоей тетрадке — df_features['first_issue_time'] = pd.to_datetime(df_features['first_issue_date']).astype(int) / 10 ** 9. Понимаю ты сначала данные в формат даты преобразовал, но что потом происходит??? Зачем в целочисленное значение переводить, делить на миллиард и каким образом это сработало у тебя?
0
Эти преобразования сделаны для приведения даты к unix time stamp — в таком формате признак уже можно использовать в моделях.
В результате приведения даты к целочисленному виду мы получаем число в наносекундах, отсюда и деление на миллиард.
В результате приведения даты к целочисленному виду мы получаем число в наносекундах, отсюда и деление на миллиард.
0
Понятно. Тогда как происходит преобразование datetime в int??? Я как не пробовал не получилось как у тебя.
У меня сработало только когда произвел вычитание преобразованных данных в datetime. Получил timedelta. Затем их значения(values) разделил на 10**9 и преобразовал в int.
Вот так вышло:
df_features['first_issue_time'] = pd.to_datetime(df_features['first_issue_date'])
df_features['first_redeem_time'] = pd.to_datetime(df_features['first_redeem_date'])
df_features['issue_redeem_delay'] = df_features['first_redeem_time'] - df_features['first_issue_time']
df_features['issue_redeem_delay'] = (df_features['issue_redeem_delay'].values / 10 ** 9).astype(int)
Что я не так сделал?
0
Действительно, в более новых версиях pandas такой подход работать не будет. Дело в том, что столбец с датами содержит пропущенные значения и не может быть преобразован в целочисленный тип. Согласно документации pandas рекомендуется делать так:
Спасибо за замечание, поправлю. Так как такого планы вопросы не сильно относятся к теме публикации, то желательно задавать их в другом месте, например, в личку здесь или в слаке ODS.
(pd.to_datetime(df_features['first_issue_date']) - pd.Timestamp("1970-01-01")) // pd.Timedelta('1s')
Спасибо за замечание, поправлю. Так как такого планы вопросы не сильно относятся к теме публикации, то желательно задавать их в другом месте, например, в личку здесь или в слаке ODS.
+1
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Туториал по uplift моделированию. Часть 1