У меня есть df, содержащий прогнозы под названием fcst, которые выглядят следующим образом:
yhat yhat_lower yhat_upper
ds
2015-08-31 -0.443522 -19.067399 17.801234
2015-09-30 6.794625 -31.472186 46.667981
...
После выполнения этого преобразования:
fcst2 = fcst["yhat"].to_frame().rename(columns={"yhat":"test1"})
fcst3 = fcst["yhat"].to_frame().rename(columns={"yhat":"test2"})
Я хочу объединить их в индексе даты какнапример:
pd.concat([fcst2,fcst3])
Но я получаю кадр данных, который не выровнен по индексу:
test1 test2
ds
2015-08-31 -0.443522 NaN
2015-09-30 6.794625 NaN
... ... ...
2017-05-31 NaN 95.563262
2017-06-30 NaN 85.829916
, и это несмотря на:
(fcst2.index == fcst3.index).any()
с возвратом True.
Мой вопрос: почему два индекса данных не объединяются в индексе и что я могу сделать, чтобы решить эту проблему?
Я знаю о функции соединения, но, поскольку некоторые даты будут отсутствовать в некоторых других фреймах данных, которые я планирую добавить, я считаю, что функция concat могла бы быть лучше.
Спасибо!