我有一个2015年2月1日至2015年10月31日期间约8.5k产品的亚马逊价格数据。目前,它以字典的形式提供,其中的键是从基准日期起的天数,值是从那天开始的新价格。例如,此处的价格从第1天起为10美元,在第45天更改为15美元,然后在第173天更改为9美元,此后不再更改。
{1:10,
45:15,
.
.
.
173:9}
存储此类时间序列以便使用python轻松操作的最佳方法是什么?我想执行很多汇总,并且还要查询特定日期的价格。最后,我将执行一些固定效果回归,并且混淆了什么是存储此时间序列的最佳方法,从而使我的编程工作变得相对简单了。我可以将表存储为273列(每天一天)和对应于8.5k产品的行。我一直在看pandas模块,它可以帮助我做到这一点,但是有更好的方法吗?谢谢!
最佳答案
您可以使用dict的dict并将其转换为pandas数据框,也可以使用numpy进行计算。您的第一个键将是product,而内部的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