如何在 R 中查找因子列的级别数?

r programmingserver side programmingprogramming

要查找 R 中因子列的级别数,我们可以使用长度函数和唯一函数。例如,如果我们有一个名为 df 的数据框,其中包含因子列 X,那么我们可以使用命令 − 查找因子列中的级别数

length(unique(df$X))

示例

考虑下面的数据框 −

x1<-sample(c("A","B","C"),20,replace=TRUE)
y1<-sample(0:9,20,replace=TRUE)
df1<-data.frame(x1,y1)
df1

输出

   x1 y1
1  C  8
2  B  9
3  B  2
4  A  7
5  A  8
6  C  4
7  B  0
8  C  3
9  B  3
10 A  5
11 A  8
12 B  0
13 A  6
14 C  2
15 A  4
16 B  7
17 A  9
18 B  1
19 B  3
20 A  5

查找 x1 列中的级别数 −

示例

length(unique(df1$x1))

输出

[1] 3

示例

x2<-sample(c("id1","id2","id3","id4"),20,replace=TRUE)
y2<-rnorm(20,1,0.05)
df2<-data.frame(x2,y2)
df2

输出

    x2    y2
1  id2  1.0582275
2  id4  0.8763659
3  id4  1.0091340
4  id1  1.0087233
5  id1  1.0022543
6  id3  0.9682852
7  id3  0.9458475
8  id2  1.0329383
9  id3  0.9890525
10 id1  0.9814830
11 id4  0.9732973
12 id1  1.0644264
13 id3  0.9328492
14 id1  0.9064330
15 id2  0.9781466
16 id2  0.9633579
17 id1  0.9985626
18 id4  1.0428324
19 id4  1.0047497
20 id4  0.9717654

查找 x2 列中的级别数 −

示例

length(unique(df2$x2))

输出

[1] 4

相关文章