Добавить диапазон дат к каждому id

Есть df с одним столбцом id. Мне необходимо к каждому id добавить диапазон дат. id много больше 100 тысяч. подробнее на фото. Для примера для двух id добавлены даты от 01.04.2022 до 03.04.2022.введите сюда описание изображения


Ответы (1 шт):

Автор решения: CrazyElf

Поскольку непонятно, сколько дат, покажу вариант с фиксированным набором дат. Если число дат будет разное, будет чуть сложнее всё:

import pandas as pd

df = pd.DataFrame({'id': range(10)})
dates = ['2022-01-01', '2022-01-02', '2022-01-03']
id_list = [id_ for id_ in df.id for _ in range(len(dates))]
dt_list = dates * df.shape[0]
df_new = pd.DataFrame({'id': id_list, 'dates': dt_list})
id dates
0 0 2022-01-01
1 0 2022-01-02
2 0 2022-01-03
3 1 2022-01-01
... ... ...

Но суть будет в любом случае такая же - набрать значения в два списка и потом сделать из них новый датафрейм.

→ Ссылка