2013-05-01 100 views
10

與MATLAB char數組開始,A:轉換MATLAB char數組串

A(1,1) = 'A' 
A(1,2) = 'P' 
A(1,3) = 'R' 
A(2,1) = 'M' 
A(2,2) = 'A' 
A(2,3) = 'Y' 

這如何被​​轉換成字符串,B,使得細胞:

B{1} = 'APR' 
B{2} = 'MAY' 

編輯: A是小區和使用函數cellstr給出了錯誤

Error using cellstr (line 23) 
S must be 2-D. 
+0

在您的錯誤信息中,誰是S? – 2013-05-01 15:02:59

+0

我有A = data {3,1}(某些單元格數據),所以A現在是<2x6 char>。然後我輸入B = cellstr(A),出現錯誤。 – rwolst 2013-05-01 15:09:24

+0

你可以把數據放在問題或pastebin中嗎? – 2013-05-01 15:10:25

回答

2

對於3D字符陣列T

B = cellstr(T(1,:,:)) 

給出

Error using cellstr (line 23) 
S must be 2-D. 

相反,它分配給2D矩陣,然後再使用 'cellstr' 作爲弗蘭克上面建議的誤差。

A(:,:) = T(1,:,:) 
B = cellstr(A)