I want to remove the element that are outside the starttime and endtime. Like for example it could be for the first 20 and last 5 entrys. I tried with the function nonzeros and it works for the time array, because the time array only have elements > 0, but not for the high. But I dont know how to remove it on a other way. Below is the Code that I use.
for j = 1:length(high)
if time(j)>= starttime && time(j)<=endtime
t(j) = time(j);
high(j) = high(j);
else
high(j) = [];
end
end
time = nonzeros(time);

 Akzeptierte Antwort

David Hill
David Hill am 3 Mai 2022

0 Stimmen

time(time<starttime|time>endtime)=[];

3 Kommentare

Lars Urban
Lars Urban am 3 Mai 2022
Yes this is a easier way to eliminate in time the things that are outside thank you! But i still dont know how to get rid of the elements in high. The problem is every high has a time, so if i delete the first 2 in time i also want to delete that in high. My question was not specific enough sorry for that.
high(time<starttime|time>endtime)=[];
time(time<starttime|time>endtime)=[];
Lars Urban
Lars Urban am 4 Mai 2022
Thank you! It works!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Debugging and Improving Code 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!

Translated by