在MATLAB中,我可以很容易地得到一個矩陣的列主要爲了使用(:)操作如下元素的矢量...在MATLAB中,爲什麼我不能編寫轉置和冒號操作符?
EDU>> A
A =
1 2
3 4
5 6
EDU>> A(:)
ans =
1
3
5
2
4
6
不過,我想獲得的元素的矢量按行排列。所以我想我會在使用(:)之前轉置矩陣。但我得到這個錯誤...
EDU>> A'(:)
A'(:)
|
Error: Unbalanced or unexpected parenthesis or bracket.
爲什麼不和'和(:)寫在這裏?我可以在2個步驟中完成,但我更願意更簡潔並避免額外的變量。
EDU>> B = A'
B =
1 3 5
2 4 6
EDU>> B(:)
ans =
1
2
3
4
5
6
爲什麼我不能通過編寫'和(:)來做到這一點?什麼是正確的方法來做到這一點?
感謝, 〜夾頭
這基本上是[這個問題]的副本(http://stackoverflow.com/q/2724020/52738)。此外,[這個相關的問題](http://stackoverflow.com/q/3627107/52738)進一步說明索引操作符'()'不能遵循某些操作,除非你把它變成一個函數調用。 – gnovice 2013-05-02 17:46:42
謝謝,我的主要問題是關於索引操作符的第二點。有趣的是,Octave似乎沒有受到這個問題的困擾。 – Chuck 2013-05-02 18:18:31