比较R中的因子水平

时间:2015-05-18 05:51:05

标签: r categorical-data

我对R中的因素有疑问。有没有办法比较每个因素的水平?我感兴趣的是一个因子的水平是否是另一个因子水平的子集。例如,让我们说我们有一个向量:

a <- c(1,1,2,2,3,3,4,4,4)
a1 <- cut(a, breaks=c(1,2,3,4), include.lowest=TRUE)
a2 <- cut(a, breaks=c(1,3,4), include.lowest=TRUE)

levels(a1)
[1] "[1,2]" "(2,3]" "(3,4]"
levels(a2)
"[1,3]" "(3,4]"

因此a2的第一个级别包含a1的前两个级别。我需要知道一些数据中的所有这些关系。 R中是否有一个函数可以给我所有这些组合?或者至少是一种手动比较因子水平的方法(可能提取断裂),所以我可以编写一个能够做到这一点的函数?目前我只是通过比较关卡的名称来做到这一点,但这并不是很有效,因为我通常不会间隔设置标签。

1 个答案:

答案 0 :(得分:1)

我认为你正在寻找桌面功能:

> table(a1, a2)
       a2
a1      [1,3] (3,4]
  [1,2]     4     0
  (2,3]     2     0
  (3,4]     0     3