У меня есть следующий pandas
фрейм данных:
import numpy as np
import pandas as pd
timestamps = [1, 14, 30]
data = dict(quantities=[1, 4, 9], e_quantities=[1, 2, 3])
df = pd.DataFrame(data=data, columns=data.keys(), index=timestamps)
, который выглядит следующим образом:
quantities e_quantities
1 1 1
14 4 2
30 9 3
Однако timestamps
должен работать от 1 до 52:
index = pd.RangeIndex(1, 53)
Следующая строка содержит timestamps
, которые отсутствуют:
series_fill = pd.Series(np.nan, index=index.difference(df.index)).sort_index()
Как получить столбцы quantities
и e_quantities
, чтобы иметь значения NaN приэти отсутствующие метки времени?
Я пробовал:
df = pd.concat([df, series_fill]).sort_index()
, но добавляет еще один столбец (0
) и меняет порядок исходного кадра данных:
0 e_quantities quantities
1 NaN 1.0 1.0
2 NaN NaN NaN
3 NaN NaN NaN
Спасибо за любую помощь.