5.10 因子的频率表

单个因子会把各部分数据分成不同的组。类似的是,一对因子可以实现交叉分组等。 函数 table() 可以从等长的不同因子中计算出频率表。如果有 k 个因子参数,那么结果将是一个k-维的频率分布数组。

假定 statef 是一个设定数据向量元素个体所在州的因子,那么下面的赋值

> statefr <- table(statef)

将会把一个样本中各种状态的频率分布表赋给 statefr。这些频率会被排序且以因子的水平特性标记。等价但有点烦琐实现方式如下

> statefr <- tapply(statef, statef, length)

进一步假设 incomef 是一个按适当定义的“收入阶层”对数据向量元素进行分类的

因子。它可以用函数 cut() 定义:

> factor(cut(incomes, breaks = 35+10*(0:7))) -> incomef

然后计算频率的二维表:

  > table(incomef,statef)
           statef
  incomef   act nsw nt qld sa tas vic wa
    (35,45]   1   1  0   1  0   0   1  0
    (45,55]   1   1  1   1  2   0   1  3
    (55,65]   0   3  1   3  2   2   2  1
    (65,75]   0   1  0   0  0   0   1  0

同样的方法也可以得到高维的频率分布表。

results matching ""

    No results matching ""