How to determine the position of an integer

1 visualizzazione (ultimi 30 giorni)
Hi,
I have a very basic question. I have a variable containing 5 numbers, say for eg,
d= [1 4 3 2 5]
how can i find the position of the number 3 in this d. I tried to use Find but I think I am using it wrong . Can anyone help me out please.
Thanks,
Vivekram

Risposta accettata

John Doe
John Doe il 9 Mag 2013
Modificato: John Doe il 9 Mag 2013
If you want to use the find function:
pos = find(d==3);
  1 Commento
Vivekram
Vivekram il 9 Mag 2013
Hi Robert,
Ya , I tried it out but unfortunately the values are in cell format. Thereby giving me an error saying:
Undefined function or method 'eq' for input arguments of type 'cell'.
Can you suggest a way?
Thanks

Accedi per commentare.

Più risposte (2)

Jim O'Doherty
Jim O'Doherty il 9 Mag 2013
Hi Vivekram,
I'd sugget using the "unique" command
[C, ia, ic]=unique(d)
ic will give you the indices of the numbers in your array d
Jim
  1 Commento
Vivekram
Vivekram il 9 Mag 2013
Hi Jim,
How will it give me the position of the digit 4 only? and the other thing that I forgot to mention is that the values are in a cell format.
Thanks

Accedi per commentare.


Grzegorz Knor
Grzegorz Knor il 9 Mag 2013
Modificato: Grzegorz Knor il 9 Mag 2013
If the values are in the cell format use cell2mat function:
pos = find(cell2mat(d)==3)

Community Treasure Hunt

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

Start Hunting!

Translated by