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

55 visualizzazioni (ultimi 30 giorni)
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 Commenti
Ashley Velasco
Ashley Velasco il 17 Apr 2017
Modificato: Ashley Velasco il 17 Apr 2017
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
Walter Roberson
Walter Roberson il 17 Apr 2017
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)

Accedi per commentare.

Risposta accettata

Walter Roberson
Walter Roberson il 26 Apr 2012
NewMatrix = [ones(size(TheMatrix,1),1), TheMatrix];
  2 Commenti
Isti
Isti il 26 Apr 2012
i'm sorry but it's not suitable in my case. is there any?
thanks

Accedi per commentare.

Più risposte (2)

Isti
Isti il 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?

ike
ike il 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....

Community Treasure Hunt

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

Start Hunting!

Translated by