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

1 Ansicht (letzte 30 Tage)
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.

Akzeptierte Antwort

madhan ravi
madhan ravi am 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{:})))

Weitere Antworten (0)

Kategorien

Mehr zu Data Types finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by