У меня есть фрейм данных, который имеет 3 поля
date_1, date_2, num_Days
num_Days
- это производный столбец, который вычисляется как date_2 - date_1
Я хочу вывести num_Days
вдиапазон 1-30. В настоящее время он принимает больше значений, чем это.
Для следующего я хотел бы перебрать кадр данных и изменить date_2
, где значение num_Days
больше 30, используя случайное значение дельты.
Я пытался сделать это, используя следующую функцию:
date_format = '%d/%m/%y'
def gen_by_delta(src_dates, num_days, date_format, delta_min, delta_max):
gen_dates = []
for dt in src_dates:
src_date = datetime.datetime.strptime(dt, date_format)
if src_date is None:
gen_dates.append("")
continue
for d in num_days:
if d > 30 :
chosen_delta = pick_random_delta_in_range(min_days=delta_min, max_days=delta_max)
result_date = (src_date + chosen_delta).strftime(date_format)
gen_dates.append(result_date)
return gen_dates
Использование этой функции выдает мне ошибку:
> data_string[found.end():])
>
> ValueError: unconverted data remains: 19
Есть ли что-то, что мне не хватаетили любой другой лучший способ добиться того же?