如何在 R 数据框列中查找最常出现的因子值?


要查找 R 数据框列中最常出现的因子值,我们可以在为特定列创建表格后,使用 names 函数与 which.max 函数。在进行因子分析时,我们可能需要知道哪个因子出现次数最多。

查看以下示例以了解如何操作。

示例 1

以下代码片段创建了一个示例数据框 -

Factor_1<-factor(sample(LETTERS[1:4],20,replace=TRUE))
df1<-data.frame(Factor_1)
df1

创建了以下数据框 -

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

要查找 df1 中哪个因子出现次数最多,请将以下代码添加到上述代码片段中 -

Factor_1<-factor(sample(LETTERS[1:4],20,replace=TRUE))
df1<-data.frame(Factor_1)
names(which.max(table(df1$Factor_1)))

输出

如果将以上所有代码片段作为单个程序执行,则会生成以下输出:-

[1] "C"

示例 2

以下代码片段创建了一个示例数据框 -

Factor_2<-factor(sample(c("Male","Female"),20,replace=TRUE))
df2<-data.frame(Factor_2)
df2

创建了以下数据框 -

   Factor_2
1  Female
2  Female
3  Male
4  Female
5  Male
6  Male
7  Female
8  Male
9  Male
10 Female
11 Female
12 Female
13 Female
14 Male
15 Female
16 Female
17 Female
18 Female
19 Female
20 Female

要查找 df2 中哪个因子出现次数最多,请将以下代码添加到上述代码片段中 -

Factor_2<-factor(sample(c("Male","Female"),20,replace=TRUE))
df2<-data.frame(Factor_2)
names(which.max(table(df2$Factor_2)))

输出

如果将以上所有代码片段作为单个程序执行,则会生成以下输出:-

[1] "Female"

示例 3

以下代码片段创建了一个示例数据框 -

Factor_3<-factor(sample(c("Hot","Cold","Warm","Lukewarm"),20,replace=TRUE))
df3<-data.frame(Factor_3)
df3

创建了以下数据框 -

   Factor_3
1  Hot
2  Lukewarm
3  Warm
4  Warm
5  Cold
6  Hot
7  Hot
8  Warm
9  Warm
10 Warm
11 Hot
12 Lukewarm
13 Cold
14 Lukewarm
15 Lukewarm
16 Lukewarm
17 Hot
18 Lukewarm
19 Lukewarm
20 Lukewarm

要查找 df3 中哪个因子出现次数最多,请将以下代码添加到上述代码片段中 -

Factor_3<-factor(sample(c("Hot","Cold","Warm","Lukewarm"),20,replace=TRUE))
df3<-data.frame(Factor_3)
names(which.max(table(df3$Factor_3)))

输出

如果将以上所有代码片段作为单个程序执行,则会生成以下输出:-

[1] "Lukewarm"

更新于: 2021年11月11日

14K+ 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告