Convert Index values from "find" function into coordinates.
    9 visualizzazioni (ultimi 30 giorni)
  
       Mostra commenti meno recenti
    
Hello! I am using the find function in my code. If I want to find where all the 2's are in a matrix, suppose, this function will spit out the indices of all the 2 values, but it does so in an interesting way:
a =
     1     1     2     1
     1     1     1     1
     1     1     2     1
     1     2     1     1
Now, if I implement the function, find(a==2), I get:
ans =
     8
     9
    11
Notice how it counts down each row until it reaches a 2. I would like a coordinate instead; I would like a (row,column) coordinate. Any ideas on how I can do this using the find function?
Much appreciated! Sean
0 Commenti
Risposte (1)
  Jan
      
      
 il 28 Gen 2017
        
      Modificato: Jan
      
      
 il 28 Gen 2017
  
      When you have a question concerning a specific command, reading the corresponding docs helps. See doc find :
[row, col] = find(a == 2)
:-)
5 Commenti
  Jos (10584)
      
      
 il 23 Feb 2018
				And without specifying the number of dimensions:
[subI{1:ndims(A)}] = ind2sub(size(A), find(A==2))
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!