Мне нужно добавить пропущенные дни (как целые числа) между строками для каждой группы, а затем заполнить пропущенные значения в столбце value
.
df = pd.DataFrame({'days':[0, 2, 3, 1, 3], 'group':['A', 'A', 'A', 'B', 'B'], 'value': [1.2, 2.3, 3.4, 0.2, 0.3]})
Введите:
days group value
0 A 1.2
2 A 2.3
3 A 3.4
1 B 0.2
3 B 0.3
Я застрял на первом шаге - добавление строк, если 0-3 отсутствует.
До сих пор я пытался присоединиться к фрейму данных в серии, повторяемой для каждой группы, или переиндексировать фрейм данных.
df = df.set_index('days')
df.reindex(pd.Series(range(4)))
ValueError: cannot reindex from a duplicate axis
Ожидаемый результат:
cons_days days group value
0 0 A 1.2
1 NaN A 1.2
2 2 A 2.3
3 3 A 3.4
0 NaN B 0.0
1 1 B 0.2
2 NaN B 0.2
3 3 B 0.3