如何使用python pandas将日期作为索引填充值?

时间:2016-03-15 19:17:46

标签: python numpy pandas

我有以下列表和一组dicts:

results = [{'timestamp': datetime.datetime(2016, 1, 15, 0, 0, tzinfo=<UTC>),
            'value1':100,
            'value2':200}, ... ]

我正在使用pandas在两个utc日期之间填充这些结果,from_dateto_date以及一年中的一周频率。其余值应为0:

generated_dates = pd.date_range(start=from_date, end=to_date,
                                freq=freq['W'], tz='UTC', normalize=True)

我正在尝试按顺序组合这两个列表。所以我创建了两个DataFrame,所以我可以这样做:

results_df = pd.DataFrame(results)
generated_dates_df = pd.DataFrame(generated_dates, columns=results_df, index=generated_dates)
generated_dates_df.fillna(0, inplace=True)

然后我连接数据:

pd.concat([results_df, generated_dates_df])

我期待着这个:

[{'timestamp': datetime.datetime(2015, 1, 1, 0, 0, tzinfo=<UTC>),
  'value1':0,
  'value2':0},
 ...
 {'timestamp': datetime.datetime(2016, 1, 15, 0, 0, tzinfo=<UTC>),
  'value1':100,
  'value2':200},
 {'timestamp': datetime.datetime(2016, 22, , 0, 0, tzinfo=<UTC>),
  'value1':0,
  'value2':0},
 ...,
]

但我一直在TypeError: data type not understood 有什么我想念的吗?

1 个答案:

答案 0 :(得分:0)

如果按“订单”表示按日期索引排序,我想你想加入......

{{1}}

您可能必须使用“lsuffix”或“rsuffix”。