2016-09-18 81 views
-5

一個數據幀我有R中的數據幀如下:操縱中的R

id year count 
1  2013 2 
1  2014 20 
2  2013 6 
2  2014 7 
2  2015 8 
3  2011 13 
... 
999 2016 109 

每個ID與至少1年相關聯,並且每年有一個計數。與每個ID相關的年數幾乎是隨機的。

我希望將其重新組合成這種格式:

id 2011_count 2012_count 2013_count 2014_count ... 
1  0   0   3   20   ... 
2  0   0   6   7   ... 
... 
999 ...  ...  ... 

我敢肯定,別人已經問過類似的問題,但我不知道如何/怎麼尋找。

謝謝!

+0

也不能在列名申請號作爲第一個字符... –

+0

每年都會出現在你的原始數據集?這會產生很大的差異...... –

回答

-1

喜歡的東西:

result <- reshape(aggregate(count~id+year, df, FUN=sum), idvar="id", timevar="year", direction="wide") 
result[is.na(result)] <- 0 
names(result) <- gsub("count\\.(.*)", "\\1_count", colnames(result)) 
+0

實際上不會產生他想要的結果......如果每年不發生在OP的原始數據集(更不用說NA) –

+0

編輯回答匹配OP結果 – apruden