2015-10-27 163 views
0

我想在Matlab中處理一些數據,我遇到了麻煩。Matlab - 連接多維矩陣行元素和輸出單行矩陣

我有一個看起來像這樣的矩陣。

[c, a, b, a] 
|a, b, c, d| 
|a, c, d, b| 
|b, a, c, d| 
[d, a, b, c] 

我想將每一行連接成一個字符串元素,並把它們放到一個單行矩陣中。

像這樣:

[caba,abcd, acdb, bacd, dabc] 

任何幫助表示讚賞。

謝謝!

+0

我只能考慮使用'cell'像'數據= {[ 'c' 的溶液, 'A', 'b', 'A']; [ '一', 'b', 'C', 'd']; [ '一個', 'C', 'd', 'b']; [ 'b','a','c','d']; ['d','a','b','c']}'' –

+1

您可以進一步瞭解這個矩陣的結構嗎?每個元素都是單個字符嗎?這是一個字符數組?如果是,那麼每行已經被認爲是單個字符串。你能提供你用來構造矩陣的實際代碼嗎? – rayryeng

回答

1
initial_char_matrix=['c','a', 'b', 'a'; 
'a', 'b', 'c', 'd'; 
'a', 'c', 'd', 'b'; 
'b', 'a', 'c', 'd'; 
'd', 'a', 'b', 'c'] 


cell_a=cell(1,size(initial_char_matrix,1)); 

for i=1:size(initial_char_matrix,1) 
    stringjoined=''; 
    for j=1:size(initial_char_matrix,2) 
     stringjoined= strcat(stringjoined,initial_char_matrix(i,j)); 
    end 
    cell_a{i}= stringjoined; 
end 

輸出:

>> celldisp(cell_a) 

cell_a{1} = 

caba 


cell_a{2} = 

abcd 


cell_a{3} = 

acdb 


cell_a{4} = 

bacd 


cell_a{5} = 

dabc 

>> 

可以使用該字符串作爲

cell_a{index}