2012-10-04 40 views
1

我以前有過這個問題,但是我沒有寫下解決方案,所以現在我又陷入了麻煩!時間序列數據操作

我有如下所示的數據幀:

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 

在的話,我想爲每個日期一行,併爲產品/信息的每個組合一列(數量,收入)。

我該如何做到這一點?提前致謝!

回答

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 
+0

要命!我試圖從'reshape'包中使用'cast'和'melt'函數而沒有成功。這更簡單,完成任務! –