2012-04-16 210 views
2

我可以使用reshape(M,1,[])輕鬆地將整個矩陣壓扁成一行。但是,這次我想將每n行平鋪成一行。因此,如果我們從100行開始,並且n = 10,那麼最終將有10行。如何使用Matlab將矩陣中的每n行平坦化?

例如

1 2 3 
4 5 6 
7 8 9 
10 11 12 

其中n = 2個變爲

1 2 3 4 5 6 
7 8 9 10 11 12 

有沒有一種簡單的方法來做到這一點?

回答

4

假設你原來的矩陣是m,則:

reshape(m',[6 2])' 

產生所需的輸出。我會留給你來概括其他情況;評論或發佈,如果這會導致你的問題。

1

這應該工作。

reshape(M',l/n,n)' 

其中n是你定義了什麼,l是在M的總元素

編輯:製造這一個班輪

相關問題