2

如果这被记录在某处而我只是找不到它,请提前道歉:

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

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

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

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

4

2 回答 2

2

您正在寻找 pandas pivot。首先做:

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

你应该得到 Bob 和 Sally 作为列。然后你可以对这两列进行正常的相关分析。

于 2013-05-13T02:40:06.073 回答
0

Pivot 不太正确,但这有效:

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

我不确定有什么区别。

于 2013-05-13T21:56:04.447 回答