How to find first instance of a value in array?
Show older comments
Hi, I am writing a code that as follows:
arr(p)=abs(c); %absolute value of c
if(arr(p)<1)
if(arr(p)>0.9)
array(t)=white1;
cor(t)=arr(p); %correlation for c>.95 && c<1
t=t+1;
end
end
maximum=max(cor); %maximum value of cor(t)
Now, I am trying to find the first instance the value of maximum comes in the "arr" Array.
I have tried the following:
1.
for v=1:x
if(maximum==arr(v))
% x=find(arr==maximum);
u=u+1;
if(u==1) %making sure only the first max value is taken
q=value(v); %q is becoming always 0.5,have to fix it
end
end
end
and,
2.
x=find(arr==maximum);
and,
3.
x = find(maximum == arr,'first') ;
In the 1st and 2nd try, when I use fprintf to detect the x, it prints blank, such as,
"x is "
In the 3rd try the following error occurs,
Second argument must be a positive scalar integer.
How can I fix it?
Accepted Answer
More Answers (2)
Is this what you're looking for?
maximum = 5;
arr = [2 4 3 5 7 3 4];
find(arr == maximum, 1)
1 Comment
Tawsif Mostafiz
on 4 Jul 2021
Edited: Tawsif Mostafiz
on 4 Jul 2021
help find % read the third explanation
Categories
Find more on Creating and Concatenating Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!