mam czas indeksowane dane:pandy - Rozszerzenie indeksu elementu DataFrame ustawiającego wszystkie kolumny dla nowych wierszy na NaN?
df2 = pd.DataFrame({ 'day': pd.Series([date(2012, 1, 1), date(2012, 1, 3)]), 'b' : pd.Series([0.22, 0.3]) })
df2 = df2.set_index('day')
df2
b
day
2012-01-01 0.22
2012-01-03 0.30
Jaki jest najlepszy sposób, aby rozszerzyć tę ramkę danych tak, że ma jeden wiersz dla każdego dnia w styczniu 2012 roku (powiedzmy), gdzie wszystkie kolumny są ustawione na NaN
(tutaj tylko b
) gdzie nie mamy danych?
więc pożądany rezultat byłby:
b
day
2012-01-01 0.22
2012-01-02 NaN
2012-01-03 0.30
2012-01-04 NaN
...
2012-01-31 NaN
Dziękujemy!
Dzięki - to jest wielki, aby wypełnić dziury, ale w jaki sposób można przedłużyć do '2012-01-31' (mówić). – paul
Hmmh. Ale jeśli mam wiele dziur/przerw w mojej oryginalnej serii czasowej, to to już nie działa. – paul
@paul Tak, moja odpowiedź jest ograniczona pod tym względem, nie mogę wymyślić bardziej ogólnej metody. Byłoby lepiej stworzyć DataFrame ze wszystkimi oczekiwanymi wartościami w pierwszej kolejności, jeśli możesz, będę mieć możliwość obejścia i zobaczę, czy mogę wymyślić coś lepszego – EdChum