MATLAB Answers

Isti
0

How to stick on/augmenting a vector into the matrix?

Asked by Isti
on 26 Apr 2012
Latest activity Commented on by Walter Roberson
on 17 Apr 2017
If i have a matrix like this:
2 1 4 6 2
9 4 6 1 2
5 3 2 8 3
7 2 1 9 3
7 1 8 2 4
3 5 4 1 2
then i want to stick on a vektor contain of "1" in the beginning of that matrix. so it'll be like this:
1 2 1 4 6 2
1 9 4 6 1 2
1 5 3 2 8 3
1 7 2 1 9 3
1 7 1 8 2 4
1 3 5 4 1 2
what to do? thanks before :')

  2 Comments

I'm a student just learning how to use MATLAB... but I'm pretty sure you can use the horzcat function to do it easily. Matlab has documentation on it.
https://www.mathworks.com/help/matlab/ref/horzcat.html
The [] operator defaults to horzcat, so the solution I listed
[ones(size(TheMatrix,1),1), TheMatrix]
is really the same as
horzcat( ones(size(TheMatrix,1),1), TheMatrix)

Sign in to comment.

3 Answers

Answer by Walter Roberson
on 26 Apr 2012
 Accepted Answer

NewMatrix = [ones(size(TheMatrix,1),1), TheMatrix];

  2 Comments

i'm sorry but it's not suitable in my case. is there any?
thanks
Sorry, I've corrected.

Sign in to comment.


Answer by Isti
on 26 Apr 2012

then the result is like this:
1 1 1 1 1 1 2 1 4 6 2
1 1 1 1 1 1 9 4 6 1 2
1 1 1 1 1 1 5 3 2 8 3
1 1 1 1 1 1 7 2 1 9 3
1 1 1 1 1 1 7 1 8 2 4
1 1 1 1 1 1 3 5 4 1 2
is there another solution?

  0 Comments

Sign in to comment.


Answer by ike
on 26 Apr 2012

yours= [ 2 1 4 6 2; 9 4 6 1 2; 5 3 2 8 3; 7 2 1 9 3; 7 1 8 2 4; 3 5 4 1 2]
add=ones(6,1); concat=[add yours]
try this....

  0 Comments

Sign in to comment.