Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用plyr制作二维汇总表_R_Plyr - Fatal编程技术网

使用plyr制作二维汇总表

使用plyr制作二维汇总表,r,plyr,R,Plyr,我有一个列ID、Score和Average age的数据集,使用ddply(),我得到下表 ddply(data, .(id, score), summarize, group_mean = round(mean(avg_age), 1)) id score group_mean 1 101 0 61.8 2 101 5 70.3 3 101 10 62.2 4

我有一个列ID、Score和Average age的数据集,使用ddply(),我得到下表

ddply(data, .(id, score), summarize, group_mean = round(mean(avg_age), 1))

       id    score group_mean
1     101        0       61.8
2     101        5       70.3
3     101       10       62.2
4       2        0       41.0
5       2        5       40.4
6       2       10       44.5
7      23        0       52.0
8      23        5       52.6
9      25        0       74.5
10     25        5       55.2
11     25       10       48.0
12     28        0       53.4
13     28        5       49.5
14      3        0       41.3
15      3        5       47.8
16      3       10       46.6
17      4        0       53.3
18      4        5       54.2
19      4       10       55.3
20      X        0       72.0
21      X        5       57.1
22      X       10       53.4
如果我想让表看起来像一个透视表,行作为id,列作为score,该怎么办?即

        0      5     10
101    61.8    70.3  62.2
2      41.0    40.4  44.5
...

我们可以从
tidyr
使用
spread
。如果
out
是从
summary
ddply

library(tidyr)
spread(out, score, group_mean)

acast
from
restrape2

library(reshape2)
acast(out, id~score, value.var='group_mean')

或使用
base R

xtabs(group_mean~id+score, out)