按照分类变量来计算频数,有时不能满足需要,例如,按照年龄段来计算频数,每10年为一个年纪段,统计各个年龄段的人数。由于Arthritis数据集中并没有该分类变量,这就需要自定义区间,按照分组的间隔来制作频数分布表。
Step1: 求极差
library(vcd) #load the package containing Arthritis data
age_range <- max(Arthritis$Age)-min(Arthritis$Age)
#最大值是74,最小值是23,极差是51
Step2:决定bin
把组距定为10,那么组数是6(不小于 51/10 的最小整数)
breakspoints <- seq(0,100,20)
labels <- as.character(seq(0,100,20)[-1) #bin = length(breakpoints - 1); labels = bins
Step3:cut data to create frequency table
使用cut()函数来分割Age数据,设置断点向量breaks,以及每个区间的名称lables
table(cut(Arthritis$Age,breaks = breaks,labels=labels))
本文介绍如何在没有直接分类变量的情况下,通过自定义区间来计算频数分布,以年龄段为例,展示了如何确定极差、设定bin数量及切割点,并使用R语言的cut函数创建频数分布表。
604

被折叠的 条评论
为什么被折叠?



