How to merge two column cell arrays into one, with alternating values?

10 Ansichten (letzte 30 Tage)
Jerki Jokne
Jerki Jokne am 11 Aug. 2021
Beantwortet: tiwwexx am 11 Aug. 2021
A = ones(5,1);
B = zeros(5,1);
Assuming A and B will always be the same size, how can I get the result? I can't seem to find the right way of using reshape to achieve this.
C = {1 0 1 0 1 0 1 0 1 0}
Thanks in advance
  4 Kommentare
Stephen23
Stephen23 am 11 Aug. 2021
No need for the second transpose, just specify the desired output size when reshaping:
C = reshape([A,B].',1,[])
Awais Saeed
Awais Saeed am 11 Aug. 2021
You are welcome @Jerki Jokne. It’s good that you got the result.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

tiwwexx
tiwwexx am 11 Aug. 2021
I would create a matrix with size a+b then fill it in using steps of two.
a=zeros(1,5);
b=ones(1,5);
c= zeros(1,size(a,2)+size(b,2));
c(1:2:end)=a;
c(2:2:end)=b;

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by