How to get the most frequent level of a categorica

2019-01-29 09:52发布

问题:

I can get the levels and frequencies of a categorical variable using table() function. But I need to feed the most frequent level into calculations later. How can I do that?

for example, I want to get "191" from categorical variable a.

> table(a)
a
  19   71   98  139  146  185  191 
 305   75  179  744    1 1980 6760

回答1:

a <- sample(x = c(19,   71,   98,  139,  146,  185,  191), size = 1000, replace = TRUE)
tt <- table(a)
names(tt[which.max(tt)])


回答2:

ll<-data.frame(table(a))
ll[which.max(ll$Freq),]

Example from mtcars data:

ll<-data.frame(table(mtcars$cyl))
 ll
  Var1 Freq
1    4   11
2    6    7
3    8   14

ll[which.max(ll$Freq),]
  Var1 Freq
3    8   14


标签: r frequency