Get the index of one cell of a cell array

2 views (last 30 days)
Hi,
From a given cell of a cell array, how is it possible to easily and quickly get its index ?
Thanks for help.
Best.
  2 Comments
Johannes Hougaard
Johannes Hougaard on 4 May 2020
Try reading the help for ind2sub or sub2ind
These functions are valid for cell arrays as well.
Nicolas Douillet
Nicolas Douillet on 4 May 2020
Edited: Nicolas Douillet on 4 May 2020
Ok thanks for your reply, but I forgot to mention this is for one dimension cell arrays in my case.

Sign in to comment.

Accepted Answer

Ameer Hamza
Ameer Hamza on 4 May 2020
Suppose you have a cell array
A = {1,2,3,4,5};
and you extract a specific element of this array
a = A(4);
then, for a general case, you can find its index back using
idx = find(cellfun(@(x) isequal(x,a{:}), A))
if all the elements of A are scalar, then you can also write
idx = find([A{:}]==a{1});
  2 Comments
Nicolas Douillet
Nicolas Douillet on 5 May 2020
Great, thank you for this very clear answer.
This is the kind of solution I was looking for.

Sign in to comment.

More Answers (0)

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Products


Release

R2019b

Community Treasure Hunt

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

Start Hunting!