我有一个包含各种文件的数据集,我希望将其聚合在一列上,并在其他列上进行水平制表
Region Device
a ios
a chrome
a safari
a ios
a chrome
b chrome
b chrome
b safari
c ios
c chrome
c ios
我希望输出像
Region ios Chrome safari
a 2 2 1
b 0 2 1
c 2 1 0
我的最终动机是制作表格和图形表示
答案 0 :(得分:0)
使用基数R:
> dat
Region Device
1 a ios
2 a chrome
3 a safari
4 a ios
5 a chrome
6 b chrome
7 b chrome
8 b safari
9 c ios
10 c chrome
11 c ios
> xtabs(s~Region+Device,cbind(dat,s=1))
Device
Region chrome ios safari
a 2 2 1
b 2 0 1
c 1 2 0
使用reshape2包:
> library(reshape2)
> dcast(dat,Region~Device,length,value.var="Device")
Region chrome ios safari
1 a 2 2 1
2 b 2 0 1
3 c 1 2 0
>