How do I see which cell that the components of a vector land in, in a cell array??

1 visualizzazione (ultimi 30 giorni)
Say I have a cell array, A, and a vector, B. I want to figure out which cell each component of the vector lands in. For example.
A = { [1 5 6] [15 3 10 7] [13 14 2 8] }
B = [1 10 5 2]
Output = [1 2 1 3]
Also, not all cells in A are equal in size, some are however. The numbers contained in B will always be found somewhere in A, but not the other way around.

Risposta accettata

madhan ravi
madhan ravi il 7 Apr 2020
c = arrayfun(@(y)arrayfun(@(x)(any(B(x)==A{y}).*y),1:numel(B),'un',0),1:numel(A),'un',0);
Output = sum(cell2mat(cat(1,c{:})))

Più risposte (0)

Categorie

Scopri di più su Data Types in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by