我有从连续分布中采样的值,例如:
import numpy as np
values = np.random.normal(loc=0.4, scale=0.1, 1000)
如何根据这些值估算模式?
平均值和中位数易于计算:np.mean(values)
和np.median(values)
;但对于模式,我不知道如何估计,因为这些值是连续的。
请注意,使用scipy.stats.mode
之类的东西是行不通的,因为我从连续分布中抽取了一组有限的值。
答案 0 :(得分:0)
如果您有一个已知的基础参数模型,那么生活很简单。适合您的数据(使用MLE或其他)并采用拟合分布的模式。如果你没有一个好的参数模型,生活就会变得更难。我在文献中看到了很多东西,但我不知道是否就此达成了任何共识。当我不得不这样做(大约20年前)时,我使用了我在C中的数字食谱中找到的算法。我不知道这是否是最好的选择。