Concantenate Horizontally Matrices from Two Different Cell Arrays

3 Ansichten (letzte 30 Tage)
Hi all,
I have two cell arrays as follows:
A = { [1; 2; 3; 4], [5; 6; 7; 8] } ;
B = { [9; 10; 11; 12], [13; 14; 15; 16] } ;
I would like to create a new cell array such that:
C = { [1 9 ; 2 10 ; 3 11 ; 4 12], [5 13 ; 6 14 ; 7 15 ; 8 16]} ;
In words, I would like to concatenate horizontally the matrices in each cell of the cell array.
Is there a way to do that?
Thanks for your help in advance,
KMT

Akzeptierte Antwort

Guillaume
Guillaume am 11 Sep. 2017
Bearbeitet: Guillaume am 11 Sep. 2017
You say concatenate horizontally, yet your example show vertical concatenation
cellfun(@vertcat, A, B, 'UniformOutput', false)
replace vertcat by horzcat as required.
  1 Kommentar
Konstantinos Tsitsilonis
Konstantinos Tsitsilonis am 11 Sep. 2017
Bearbeitet: Konstantinos Tsitsilonis am 11 Sep. 2017
Sorry for the confusion, I have corrected my question. I do understand the underlying logic of your function. Thanks for your answer!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

KL
KL am 11 Sep. 2017
Assuming your matrix dimensions are consistent,
cellfun(@(a,b) [a;b],A,B,'UniformOutput',false)

Community Treasure Hunt

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

Start Hunting!

Translated by