如何针对存储在 R 数据框中的数据创建带有求和的枢纽表?
为了针对存储在 R 数据框中的数据创建带有求和的枢纽表,我们可以按照以下步骤操作:
首先,创建一个包含两个分类列和一列数字列的数据框。
接下来,使用 reshape2 程序包中的 dcast 函数,针对存储在数据框中的数据创建枢纽表。
示例
创建数据框
让我们创建一个如下所示的数据框:
Group<-sample(LETTERS[1:5],25,replace=TRUE) Gender<-sample(c("Male","Female"),25,replace=TRUE) Score<-sample(1:100,25) df<-data.frame(Group,Gender,Score) df
输出
上述脚本执行后,会生成如下输出(此输出会因系统中的随机性有所不同):
Group Gender Score 1 B Male 69 2 B Male 66 3 D Male 34 4 D Male 25 5 E Male 51 6 B Male 38 7 E Male 48 8 A Female 29 9 D Male 10 10 C Female 96 11 E Female 8 12 D Male 39 13 E Female 94 14 D Female 61 15 A Female 70 16 B Male 90 17 B Female 100 18 B Female 27 19 A Female 33 20 A Female 98 21 A Male 32 22 B Female 78 23 E Male 86 24 D Male 74 25 A Female 99
创建枢纽表
使用 reshape2 程序包中的 dcast 函数,针对存储在数据框 df 中的数据创建枢纽表:
Group<-sample(LETTERS[1:5],25,replace=TRUE) Gender<-sample(c("Male","Female"),25,replace=TRUE) Score<-sample(1:100,25) df<-data.frame(Group,Gender,Score) library(reshape2) dcast(data=df,formula=Group~Gender,fun.aggregate=sum,value.var="Score")
输出
Group Female Male 1 A 152 181 2 B 177 117 3 C 83 66 4 D 137 51 5 E 196 149
广告