2012-11-06 13 views
7

Mam raczej uproszczony przykład, który chciałbym nauczyć się najlepszego możliwego rozwiązania. Mam zestaw danych:znajdź dane między zakresami w matlab

depth = [0:0.5:20]; 

Chcę tylko zaznaczyć „głębokość” z określonym zakresie, na przykład od 2 do 5. Można to zrobić poprzez:

d1 = find(depth == 2,1,'first'); 
d2 = find(depth == 5,1,'first'); 
depth = depth(d1:d2); 

Czy istnieje alternatywa , czystszy sposób robienia tego?

Odpowiedz

12

wystarczy użyć logicznego indeksowania:

depth(depth >= 2 & depth <= 5) 
Powiązane problemy