2016-09-18 63 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