Removing spikes with standard deviation
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Gabriel Luca Pugliese Borges
am 21 Mär. 2022
Kommentiert: Star Strider
am 21 Mär. 2022
Hey.
I'm trying to remove some spikes in a water current data using nanmean and nanstd.
To do it, i created this script:
Data3=Data2(:,:,5:6); %Data2 is the real data matrix. To don't take risks, i created a copy and work on it.
it=2;
[~,col,page]=size(Data3);
for p=1:page
for c=1:col
for i=it+1:length(Data3)-it;
x=nanmean(Data3(i-it:i+it,c,p));
y=nanstd(Data3(i-it:i+it,c,p));
if Data3(i,c,p)>x+3*y || Data3(i,c,p)<x-3*y;
Data3(i,c,p)=NaN;
end
end
end
end
%clear p c r x y z k row col page it
After running it, i did a plot to check if the original data(Data2) are now diferent from the one with no spikes(Data3)
plot(Data2(:,5,5))
hold
plot(Data3(:,5,1))
Despite this, i realized that they still equivalents and perfectly equals.
Why my code isn't working?
I appreciate any kind of help on it. Thanks to you all. This community is one of the best in the world!
0 Kommentare
Akzeptierte Antwort
Star Strider
am 21 Mär. 2022
Without the data, it is not possible to determine the reason the code does not work.
6 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Time-Frequency Analysis finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!