How to detect data that does not follow a bell curve?
1 view (last 30 days)
Show older comments
Hello everyone!
I have significantly large dataset and I need to detect which data does not follow a gaussian distribution or bell curve (see screenshots). I have tried using several tests such as kstest, lillietest, etc but for some reason, these tests do not work for me. I have tried using the histcounts function for visualizing the data distribution that you see in the screenshots. Any insights would be appreciated.
[N1,edges1,bin1] = histcounts(normal);
plot(N1)
[N2,edges2,bin2] = histcounts(abnormal);
plot(N2)
0 Comments
Accepted Answer
Sam Chak
on 14 Sep 2023
Hi @Miguel
Not sure if you can try it this way to compare the R-square value. Data that follows the bell curve tends to have a high R-squared value close to 1. Data that does not follow the bell curve usually have relatively low R-squared values.
load('normal.mat');
[N1,edges1,bin1] = histcounts(normal);
x1 = 1:length(N1);
[fitobject1, gof1] = fit(x1', N1', 'gauss1')
load('abnormal.mat');
[N2,edges2,bin2] = histcounts(abnormal);
x2 = 1:length(N2);
[fitobject2, gof2] = fit(x2', N2', 'gauss1')
subplot(211)
plot(N1), grid on, title('N_{1} follows Bell curve')
subplot(212)
plot(N2), grid on, title('N_{2} does not follows Bell curve')
More Answers (0)
See Also
Categories
Find more on Spline Postprocessing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!