【发布时间】:2012-03-29 22:10:15
【问题描述】:
Matlab 中的mode-函数返回数据集中出现频率最高的值。但是“当有多个值同样频繁地出现时,模式会返回这些值中的最小值。”
这对于我使用它的用途不是很有用,我宁愿让它在没有模态值的情况下返回中值或算术平均值(因为它们至少在分布的中间)。否则使用mode 的结果在规模的低端太多了(我的分布中有很多独特的值)。
是否有一种优雅的方法可以使mode 偏爱数据集中的更多中心值(在没有真正的模态值的情况下)?
btw.:我知道我可以使用[M,F] = mode(X, ...),手动检查最频繁的值(并在必要时计算中值或平均值)。但这似乎有点尴尬,因为我几乎要完全重写 mode 应该做的所有事情。我希望有一个更优雅的解决方案。
【问题讨论】: