removing irrelevant datasets from variable
Ältere Kommentare anzeigen
i have a data set of size Data{301*4090}. From this data set I want to remove data which is less than a particular range. So I start analyzing the Data(1) and check if the values are less than -500 or greater than 500 I should keep this data set otherwise I should eliminate this data set.
So I use a nested for loop first which runs from 1 to 301 and second which runs from 1 to 4090. I use a if condition to check for the above conditions.
for i = 1:1:len(1)
for j = 1:1:4090
if (newsensorData(i,j)<=-500)||(newsensorData(i,j)>=500)
modsensorData(i,j) = newsensorData(i,j);
else
sprintf('This data is not relevant for further processing');
end
end
end
My problem is I want that if in Data(1) my condition is fulfilled I should stop checking Data(1) and then check Data(2).
How do I make this work. Please excuse me if I did not frame my question properly.
Thanks.
5 Kommentare
Jatin Arora
am 21 Mai 2013
I still don't understand what you are trying to do. Is it what Walter suggests? Also, you didn't really answer my question. What are Data(1) and Data(2)?
What does Data{1} look like? Are you aware that the curly braces {} are normally used in the context of cell arrays?
Jatin Arora
am 21 Mai 2013
José-Luis
am 21 Mai 2013
Maybe it's just one of those days, but I just don't get what you are trying to do. Anyway, I'm glad it worked out for you.
Antworten (2)
Walter Roberson
am 21 Mai 2013
if condition
...
else
fprintf('This data is not relevant for further processing');
break; %notice this!
end
Iain
am 21 Mai 2013
0 Stimmen
IgnoredValue = NaN; % (or 0, or inf, or some known bad value)
modsensorData = newsensorData;
modsensorData(modsensorData > 500) = IgnoredValue;
modsensorData(modsensorData < -500) = IgnoredValue;
Kategorien
Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!