时间序列数据操作

时间:2012-10-04 11:51:37

标签: r time-series data-manipulation

之前我遇到过这个问题,但我没有记下解决方案,所以现在我又遇到了麻烦!

我有一个如下数据框:

Date    Product    Qty    Income
201001  0001       1000   2000
201002  0001       1500   3000
201003  0001       1200   2400
.
.
201001  0002       3500   2000
201002  0002       3200   1900
201003  0002       3100   1850

总之,我对每个日期/产品组合都有一行,以及每种组合的数量和收入信息。

我想重新排列此数据框,使其如下所示:

Date    Qty.0001    Income.0001   Qty.0002    Income.0002
201001  1000        2000          3500        2000
201002  1500        3000          3200        1900
201003  1200        2400          3100        1850

总之,我希望每个日期都有一行,每个产品/信息组合(数量,收入)都有一列。

我怎样才能做到这一点?提前谢谢!

1 个答案:

答案 0 :(得分:4)

使用reshape

reshape(x,idvar="Date",timevar="Product",direction="wide")
    Date Qty.0001 Income.0001 Qty.0002 Income.0002
1 201001     1000        2000     3500        2000
2 201002     1500        3000     3200        1900
3 201003     1200        2400     3100        1850