计算Pandas时间序列的协方差

时间:2013-05-13 01:26:32

标签: python pandas time-series covariance

如果在某处记录了这一点而事先道歉并且我找不到它:

假设我有一个如下所示的时间序列数据框:

WEEK_END_DATE              TITLE_SHORT          SALES  
2012-02-25 00:00:00.000000 "Bob" (EBK)            1
2012-03-31 00:00:00.000000 "Bob" (EBK)            1
2012-03-03 00:00:00.000000 "Sally" (EBK)          1
2012-03-10 00:00:00.000000 "Sally" (EBK)          1
2012-03-17 00:00:00.000000 "Sally" (EBK)          1
2012-04-07 00:00:00.000000 "Sally" (EBK)          1

我想计算销售中的协方差,以便找到倾向于一起移动的用户。我知道大熊猫有一个协方差特征:http://pandas.pydata.org/pandas-docs/stable/computation.html#covariance,但我不确定如何为这种目的重塑我的数据。

我是否认为需要将用户设置为列索引,以便每个系列都是时间序列中的向量?我不知道该怎么做。

2 个答案:

答案 0 :(得分:2)

您正在寻找pandas pivot。先做:

df.pivot(index='WEEK_END_DATE', columns='TITLE_SHORT', values='SALES')

你应该把Bob和Sally作为专栏。然后你可以用这两列进行正常的相关分析。

答案 1 :(得分:0)

Pivot不太对劲,但这很有效:

df = pd.pivot_table(df, rows='WEEK_END_DATE', cols='TITLE_SHORT', values='SALES', aggfunc="sum")

我不确定区别是什么。