Filter löschen
Filter löschen

Conditional find in matlab

4 Ansichten (letzte 30 Tage)
Amir Mahmoudi
Amir Mahmoudi am 18 Jan. 2024
Kommentiert: Les Beckham am 18 Jan. 2024
I = find(X == a,1,'first'), J = find(X == b,1,'first'), K = find(X == c,1,'first') provided that K > J > I How can I implement the conditional part? Thanks in advance.

Akzeptierte Antwort

Les Beckham
Les Beckham am 18 Jan. 2024
Bearbeitet: Les Beckham am 18 Jan. 2024
X = [10 20 30 40 50 10 20 30 40 50];
a = 30;
b = 20;
I = find(X == a, 1, 'first')
I = 3
J = find(X((I+1):end) == b, 1, 'first') + I % start search after index I
J = 7
X(I)
ans = 30
X(J)
ans = 20
  2 Kommentare
Amir Mahmoudi
Amir Mahmoudi am 18 Jan. 2024
Is it possible to write your codes in terms of > or < ?
Les Beckham
Les Beckham am 18 Jan. 2024
Sure, just change the == to whatever you want instead.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by