Removing top and bottom outliers
3 views (last 30 days)
Show older comments
Nicholas Omoding
on 12 Jul 2021
Edited: Scott MacKenzie
on 12 Jul 2021
I’ve surface damage depth (D) for 3D points (x, y, z). I’d like remove top and bottom 5% of the D values with their corresponding (x, y, z) from the matrix so that I can plot the remaining 90% of the points. Based on the attached sub set of the data, please kindly assist on the based way to achieve this with the rmoutliers function?
0 Comments
Accepted Answer
Scott MacKenzie
on 12 Jul 2021
Edited: Scott MacKenzie
on 12 Jul 2021
Yes, the rmoutliers function will do the trick. After removing the top and bottom 5% of the values, the vectors below are reduced from 100 elements each to 90 elements each.
% test data
x = rand(1,100);
y = rand(1,100);
z = rand(1,100);
D = rand(1,100);
[D, TF] = rmoutliers(D, 'percentiles', [5 95]);
x(TF) = [];
y(TF) = [];
z(TF) = [];
whos
0 Comments
More Answers (0)
See Also
Categories
Find more on Descriptive Statistics 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!