Добавить диапазон дат к каждому 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 |
| ... | ... | ... |
Но суть будет в любом случае такая же - набрать значения в два списка и потом сделать из них новый датафрейм.