【问题标题】:Time series data manipulation时间序列数据操作
【发布时间】:2012-09-25 10:52:08
【问题描述】:

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

我有一个如下的数据框:

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

换句话说,我希望每个日期有一行,产品/信息(数量,收入)的每个组合都有一个列。

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

【问题讨论】:

    标签: r time-series data-manipulation


    【解决方案1】:

    使用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
    

    【讨论】:

    • 太棒了!我试图使用reshape 包中的castmelt 函数但没有成功。这样就简单多了,完成了任务!
    猜你喜欢
    • 2021-10-03
    • 2016-04-04
    • 2019-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多