modeest
软件包提供了一些单峰单变量数据的众数估计器。
其中包含一个名为mfv
的函数来返回最频繁的值,或者(如?mfv
所述)最好使用“离散”方法的`mlv(..., method='discrete')`。
library(modeest)
apply(dd[,2:6], 1,mfv)
[1] 5 7 4 2
apply(dd[,2:6], 1,mlv, method = 'discrete')
[[1]]
Mode (most frequent value): 5
Bickel's modal skewness: -0.2
Call: mlv.integer(x = newX[, i], method = "discrete")
[[2]]
Mode (most frequent value): 7
Bickel's modal skewness: -0.4
Call: mlv.integer(x = newX[, i], method = "discrete")
[[3]]
Mode (most frequent value): 4
Bickel's modal skewness: -0.4
Call: mlv.integer(x = newX[, i], method = "discrete")
[[4]]
Mode (most frequent value): 2
Bickel's modal skewness: 0.4
Call: mlv.integer(x = newX[, i], method = "discrete")
现在,如果你有多个最频繁出现的值,那么你需要考虑你想要什么。
mfv
和 mlv.integer
都会返回所有并列最频繁出现的值。(尽管 print 方法只显示一个值)
id
在哪里?你的列v1-v5
是否应该标记为x1-x5
? - mnelc(3,2,2,2,3)
的模是7吗? - Matthew Lundberg