如果某些列在 R 数据框中是分类列,要查找列总数,我们可以按照以下步骤操作 -
首先,创建一个数据框。
然后,如果某些列是分类列,则使用 plyr 包中的 numcolwise 函数来查找列总数。
让我们创建一个数据框,如下所示 -
Grp<-sample(c("Male","Female"),25,replace=TRUE) Score<-sample(1:50,25) Frequency<-sample(1:5,25,replace=TRUE) df1<-data.frame(Grp,Score,Frequency) df1输出结果
执行时,上述脚本生成以下内容output(this output will vary on your system due to randomization)-
Grp Score Frequency 1 Male 22 2 2 Male 10 2 3 Female 38 4 4 Female 13 2 5 Male 24 5 6 Male 39 2 7 Male 23 5 8 Female 42 3 9 Female 15 4 10 Female 49 4 11 Male 18 2 12 Female 30 5 13 Male 17 2 14 Male 4 3 15 Male 34 2 16 Female 3 5 17 Male 35 2 18 Female 31 3 19 Female 43 5 20 Female 9 4 21 Female 12 4 22 Female 8 4 23 Male 29 2 24 Male 46 3 25 Male 33 2
如果某些列是分类列,则查找列总计
使用 plyr 包中的 numcolwise 函数查找数据框 df1 中数值列的列总数 -
Grp<-sample(c("Male","Female"),25,replace=TRUE) Score<-sample(1:50,25) Frequency<-sample(1:5,25,replace=TRUE) df1<-data.frame(Grp,Score,Frequency) library(plyr) numcolwise(sum)(df1)输出结果
Score Frequency 1 627 81
让我们创建一个数据框,如下所示 -
factor<-sample(LETTERS[1:4],25,replace=TRUE) v1<-rpois(25,2) v2<-rpois(25,5) df2<-data.frame(factor,v1,v2) df2输出结果
执行时,上述脚本生成以下内容output(this output will vary on your system due to randomization)-
factor v1 v2 1 C 3 7 2 C 2 5 3 C 2 5 4 A 3 7 5 C 4 8 6 B 0 6 7 C 3 6 8 D 3 4 9 D 2 4 10 A 6 10 11 A 2 4 12 A 2 5 13 B 3 6 14 C 2 7 15 A 2 4 16 C 0 6 17 C 3 7 18 B 1 7 19 C 1 6 20 B 2 3 21 A 1 8 22 C 1 1 23 A 3 7 24 A 4 7 25 B 1 7
如果某些列是分类列,则查找列总计
使用 plyr 包中的 numcolwise 函数查找数据框 df2 中数值列的列总数 -
factor<-sample(LETTERS[1:4],25,replace=TRUE) v1<-rpois(25,2) v2<-rpois(25,5) df2<-data.frame(factor,v1,v2) library(plyr) numcolwise(sum)(df2)输出结果
v1 v2 1 56 147