Filter löschen
Filter löschen

how can i get a horzenital vector?

1 Ansicht (letzte 30 Tage)
Aseel H
Aseel H am 14 Sep. 2011
X = [2 1 5 1
5 4 8 1
1 4 5 7];
if i use X1 = X(:);
the output is X1=[2
5
1
1
4
4
5
8
5
1
1
7]
but i wante the out put is X1 =[2 1 5 1 5 4 8 1 1 4 5 7];
thank you very much

Akzeptierte Antwort

Andrei Bobrov
Andrei Bobrov am 14 Sep. 2011
X1 = reshape(X',1,[])
  2 Kommentare
Andrei Bobrov
Andrei Bobrov am 14 Sep. 2011
My typo! Corrected...
Thanks Fangjun!
Jan
Jan am 14 Sep. 2011
@Fangjun: Without the transpose, you get X1 = [2,5,1,...], but Amal wants [2,1,5,...] - the data in row order.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

Fangjun Jiang
Fangjun Jiang am 14 Sep. 2011
X1=X';
X1=X1(:);

Daniel Shub
Daniel Shub am 14 Sep. 2011
If there is any chance that you matrix will have complex numbers you need to be careful with the difference between ' (ctranspose) and .' (transpose). To be clear I might go with:
X1 = transpose(X(:));
I do not know if there is a performance difference between ctranspose and transpose for real matrices.
  1 Kommentar
Sean de Wolski
Sean de Wolski am 14 Sep. 2011
There is not. Though there was a bug with ctranspose in the original release of R2009b.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by