how to calculate mean square error?

27 views (last 30 days)
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

Sulaymon Eshkabilov
Sulaymon Eshkabilov on 13 Jun 2021
Edited: Sulaymon Eshkabilov on 13 Jun 2021
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
Sulaymon Eshkabilov
Sulaymon Eshkabilov on 11 Jul 2021
Edited: Sulaymon Eshkabilov on 11 Jul 2021
Ok. I'll have a look a bit later today.
studentmatlaber
studentmatlaber on 11 Jul 2021
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)

Community Treasure Hunt

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

Start Hunting!