Fit data to normal distribution

隐身守侯 提交于 2019-11-30 09:44:13

问题


I want some data to fit the corresponding Gaussian distribution.

The data is meant to be Gaussian already, but for some filtering reasons, they will not perfectly match the prescribed and expected Gaussian distribution. I therefore aim to reduce the existing scatter between data and desired distribution.

For example, my data fit the Gaussian distribution as follows (the expected mean value is 0 and the standard deviation 0.8):

The approximation is already decent, but I really want to crunch the still tangible scatter between simulated data and expected distribution.

How can I achieve this?

EDIT

Up to now, I have introducing kinda safety factor, defined as:

SF = expected_std/actual_std;

and then

new_data = SF*old_data;

This way the standard deviation matches the expected value, but this procedure looks quite poor from my understanding.


回答1:


If you don't want to make any non-linear transformations of the distributions, all you can do is adjust the mean and standard deviation.

%# 1. adjust the mean (do this even if the offset is small)
data = data - mean(data);

%# 2. adjust the standard deviation
data = data/std(data) * expected_SD;


来源:https://stackoverflow.com/questions/15473064/fit-data-to-normal-distribution

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!