If I have matrix a=[1 2; 3 4; 5 6; 7 8] (dimension 4x2) and i want to calculate
A= [1 2 0 0 0 0 0 0;
3 4 1 2 0 0 0 0;
5 6 3 4 1 2 0 0;
7 8 5 6 3 4 1 2]
(dimension 4x8),
how can i do?
Thanks.

 Akzeptierte Antwort

Matt J
Matt J am 6 Dez. 2019
Bearbeitet: Matt J am 6 Dez. 2019

1 Stimme

ac=num2cell([0,0;a],2);
T=toeplitz(1:4,[1,zeros(1,3)]);
A=cell2mat(ac(T+1))
A =
1 2 0 0 0 0 0 0
3 4 1 2 0 0 0 0
5 6 3 4 1 2 0 0
7 8 5 6 3 4 1 2

3 Kommentare

JESUS DAVID ARIZA ROYETH
JESUS DAVID ARIZA ROYETH am 6 Dez. 2019
Excelent!
Image Analyst
Image Analyst am 6 Dez. 2019
Jesus, can you "Accept this answer" to give Matt credit for it? Thanks in advance.
SV
SV am 6 Dez. 2019
Amazing! Thank for your help

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Gefragt:

SV
am 6 Dez. 2019

Kommentiert:

SV
am 6 Dez. 2019

Community Treasure Hunt

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

Start Hunting!

Translated by