convert the values of a vector into a matrix and move the vector positions.
1 view (last 30 days)
Show older comments
Hi, I need to do the following and I hope you can help me.
given a vector of (for example):
a=[3 9 32 6 5 6 7 1 2 10];
choose the first 5 positions upside down and 5 the next ones too but I must assign the value of position 6 to the next row of the matrix in position one, after that I need to see the resulting matrix, sorry for the bad explanation, to next I added an example of what I want to obtain
M= [5 6 32 9 3; 6 5 6 32 9; 7 6 5 6 32; 1 7 6 5 6 ... etc]
Thanks for reading and of course taking your time, I am not good enough in matlab but i I hope to impove my skills :D
Accepted Answer
Stephen23
on 26 Oct 2018
>> a = [3,9,32,6,5,6,7,1,2,10];
>> toeplitz(a(5:end),a(5:-1:1))
ans =
5 6 32 9 3
6 5 6 32 9
7 6 5 6 32
1 7 6 5 6
2 1 7 6 5
10 2 1 7 6
2 Comments
Andrei Bobrov
on 26 Oct 2018
Edited: Andrei Bobrov
on 26 Oct 2018
+1
also
rot90(hankel(a(1:5),a(5:end)),-1)
More Answers (0)
See Also
Categories
Find more on Get Started with MATLAB in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!