在python中存储时间序列数据

har*_*l.c 5 python database data-storage time-series

我有一个2015年2月1日至2015年10月31日期间约8.5k产品的亚马逊价格数据。目前,它以字典的形式提供,其中的键是从基准日期起的天数,值是从那天开始的新价格。例如,此处的价格从第1天起为10美元,在第45天更改为15美元,然后在第173天更改为9美元,此后没有变化。

{1:10,
 45:15,
 .
 .
 .
 173:9}
Run Code Online (Sandbox Code Playgroud)

存储此类时间序列以便使用python轻松操作的最佳方法是什么?我想执行很多汇总,并且还要查询特定日期的价格。最后,我将执行一些固定效应回归,并且混淆了什么是存储此时间序列的最佳方法,因此我的编程工作变得相对简单了。我可以将表存储为273列(每天一天)和对应于8.5k产品的行。我一直在研究可以帮助我完成此任务的熊猫模块,但是有更好的方法吗?谢谢!

Sir*_*lot 5

您可以使用dict的dict并将其转换为pandas数据框,也可以使用numpy进行计算。您的第一个键将是product,而内部dict将是您已经拥有的dict,但它不会以您建议的格式打印,但是您需要做的就是对它进行转置,以便快速举例说明

import pandas as pd

d = {'Product1': {1:10, 45:15, 173:9}, 'Product2': {1:11, 100:50, 173:10}}
df = pd.DataFrame(d).T
print df

          1    45   100  173
Product1   10   15  NaN    9
Product2   11  NaN   50   10
Run Code Online (Sandbox Code Playgroud)