how to process cell array
Ältere Kommentare anzeigen
Hi guys
I have two cell arrays A, B.
A = {[1 -1 1], [2 3 6 5]};
B = {[2 1], [1 4]};
B is the index for A.
I'd like to have a certain function A(B) give me
C = {[-1 1], [2 5]}.
Aside from cellfun, Is there any other ways to do this?
Thanks,
2 Kommentare
Azzi Abdelmalek
am 6 Aug. 2012
what do you mean B is the index of A? and how C is related to A and B
zhang
am 6 Aug. 2012
Antworten (1)
Honglei Chen
am 6 Aug. 2012
Bearbeitet: Honglei Chen
am 6 Aug. 2012
c = cellfun(@(a,b) a(b),A,B,'UniformOutput',false)
or
c = arrayfun(@(x)A{x}(B{x}),1:length(A),'UniformOutput',false)
2 Kommentare
Walter Roberson
am 6 Aug. 2012
zhang specifically asked "aside from cellfun"
Honglei Chen
am 6 Aug. 2012
Bearbeitet: Honglei Chen
am 6 Aug. 2012
Added a solution with arrayfun, but I don't know if arrayfun is ok
Kategorien
Mehr zu Data Types finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!