我有一个包含1440个值(值在0-1之间)的向量y,看起来像高斯分布。因此,我想找到最适合的高斯分布以得到一个模型。
我的问题是,norm 中的值比 y 中的值要小得多,即 norm 中的值的数量级为 10-3,而 y 中的值在 0 到 1 之间。因此,我需要添加一个额外的步骤来将 norm 中的值归一化到 0 到 1 的范围内。
x=1:1440;
[sigma_,mu_] = gaussfit(x,y);
norm = normpdf(x,mu_,sigma_);
我的问题是,norm 中的值比 y 中的值要小得多,即 norm 中的值的数量级为 10-3,而 y 中的值在 0 到 1 之间。因此,我需要添加一个额外的步骤来将 norm 中的值归一化到 0 到 1 的范围内。
norm_data = (norm - min(norm)) / ( max(norm) - min(norm) );
我的步骤正确吗?(估计sigma和mu,normpdf,归一化)是否有一种方法可以直接获得原始数据的拟合表达概率?
y
可以在此处下载。
y
的总和在[0.5 1.5]
之间的数据返回,无论y
的最大值是多少。另外,使用norm_data=norm*sum(y)
操作比你目前使用的方式更简洁、更优雅!@gabboshow - Ander Biguri