我想选择频率最高的所有类别,并将它们分配给名为freq_cat
的新变量。在以下示例中,字符a
和b
最常见。可以帮我吗?
exm <- data.frame(x=c("a","b","c","d"),
f=c(3,3,1,2))
我需要的输出如下:
freq_cat: a b
谢谢!
答案 0 :(得分:3)
一种方法是在列exm
等于列f
的最大值的情况下对f
进行子集设置。然后,您可以选择列"x"
。
exm[exm$f == max(exm$f),"x"]
[1] a b
Levels: a b c d
答案 1 :(得分:0)
一种类似的方法是通过which
来检查逻辑条件的索引:
exm$x[which(exm$f==max(exm$f))]
[1] a b
Levels: a b c d