how to calculate mean square error?

hello everyone, I separated the signals from noise by passing them through a low pass filter. I extracted the histogram of the noiseless signals. I tried to fit in matlab. the optimal distributions seem to be exponential and weilbull. I want to calculate the mean square error for these two distributions. I will use whichever distribution has the least error rate. But I don't know how to calculate mean square error. I would be very happy if you could help me with this subject.
signal=1x512712 double

 Accepted Answer

Here is the sample code how to compute MSE from the histogram fit model:
x = .... % Your data. You've got it.
% Handle of the figure is needed
HH = histfit(x,Nbins); % HISTOGRAM fit model build. You've got it
%% Separate out the data from HISTOGRAM Plot and Fit Model
Data = get(HH(1),'XData'); % HIST Data
FM = get(HH(2),'YData'); % FIT Model
MD = mean(DATA); % MEAN Of Bins
FM2 = mean(reshape(FM, 2, [])); % Mean Of Bin Edges Fit
ERR = MD - FM2; % ERR
SSE = sum(ERR.^2); % Sum-Squared Error
MSE = mean(ERR.^2); % Mean-Squared-Error

6 Comments

You'd need to apply the above procedure for each of them individually.
Thank you very much for your answer, but I have a few questions I want to ask.
You said that I have to apply separately for each one. In the code you sent as an example, the index length 'x' is 512712. In other words, the data whose histogram I have drawn consists of 512712 windows. Should I get it in a for loop and have it do it 512712 times? Please excuse my inexperience in this matter.
Yes, you may consider the loop in your case.
@Sulaymon Eshkabilov Hello again. Could you please take a look at my question in this link? I really can't find the answer. I fit the distribution manually. But now I can't calculate the mean square error of the histogram with manual fit. https://uk.mathworks.com/matlabcentral/answers/868318-how-to-calculate-mean-square-error-in-histogram?s_tid=srchtitle
Ok. I'll have a look a bit later today.
I'm so sorry, I didn't realize I didn't hit the accept button. I used your solution for auto fit but couldn't adapt it for manual fit.

Sign in to comment.

More Answers (0)

Categories

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!