我对统计很陌生,所以请原谅我可能使用了错误的词汇。
我有一些数据在绘制时看起来(对我来说)像高斯。
数据是从 jpeg 图像中提取的。这是从图像中截取的一条垂直线,仅使用红色数据(来自 RGB)。
以下是完整数据(27 个数据点):
> r
[1] 0.003921569 0.031372549 0.023529412 0.015686275 0.003921569 0.027450980
[7] 0.003921569 0.015686275 0.031372549 0.105882353 0.305882353 0.490196078
[13] 0.560784314 0.615686275 0.592156863 0.505882353 0.364705882 0.227450980
[19] 0.050980392 0.031372549 0.019607843 0.054901961 0.031372549 0.015686275
[25] 0.027450980 0.003921569 0.011764706
> dput(r)
c(0.00392156862745098, 0.0313725490196078, 0.0235294117647059,
0.0156862745098039, 0.00392156862745098, 0.0274509803921569,
0.00392156862745098, 0.0156862745098039, 0.0313725490196078,
0.105882352941176, 0.305882352941176, 0.490196078431373, 0.56078431372549,
0.615686274509804, 0.592156862745098, 0.505882352941176, 0.364705882352941,
0.227450980392157, 0.0509803921568627, 0.0313725490196078, 0.0196078431372549,
0.0549019607843137, 0.0313725490196078, 0.0156862745098039, 0.0274509803921569,
0.00392156862745098, 0.0117647058823529)
plot(r)
我想找到一个尽可能接近绘图/数据的高斯。
我尝试使用 R 包 mixtools 中的 normalmixEM。
> fit = normalmixEM(r)
但这似乎在默认情况下试图适应两个高斯的混合。
我尝试使用参数 k 指定只有一个高斯:
> fit = normalmixEM(r, k = 1)
Error in normalmix.init(x = x, lambda = lambda, mu = mu, s = sigma, k = k, :
arbmean and arbvar cannot both be FALSE
我怎样才能拟合数据?