Effacer les filtres
Effacer les filtres

How to find index of a value in cell array

68 vues (au cours des 30 derniers jours)
Vishal Sharma
Vishal Sharma le 25 Jan 2017
I have this Cell Array ‘A’ of size 3 by 7
A = { 3 4 [] [] [] [] []
2 6 -2 2 -2.1 2 2
-5 -5 25 1 [] [] []}
I want to find index of ‘6’ element in 2nd row and 2nd column The answer shall be row = 2 and column = 2

Réponse acceptée

the cyclist
the cyclist le 25 Jan 2017
Modifié(e) : the cyclist le 25 Jan 2017
isSix = cellfun(@(x)isequal(x,6),A);
[row,col] = find(isSix);
  3 commentaires
hyunglok kim
hyunglok kim le 26 Mar 2018
This answer is the best.
Kristoffer Walker
Kristoffer Walker le 13 Déc 2019
Not at all intuitive, but it works great, even for logicals.

Connectez-vous pour commenter.

Plus de réponses (1)

Walter Roberson
Walter Roberson le 25 Jan 2017
Re-using the framework of my answer to your earlier question:
B = A;
B(cellfun(@isempty, B)) = {NaN};
[maxrow, maxcol] = find( reshape(cell2mat(B), [], 1) == 6);

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by