web-dev-qa-db-ja.com

MATLAB文字配列を文字列に変換

MATLAB char配列で始まるA:

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. 
10
rwolst

次の関数を使用します。 http://www.mathworks.com/help/matlab/ref/cellstr.html

>> B =  cellstr(A)

B = 

    'APR'
    'MAY'

>> B{1}

ans =

APR
9

3D文字配列Tの場合

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

エラーを与える

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

代わりに、最初に2Dマトリックスに割り当ててから、上記でFranckが提案したように「cellstr」を使用します。

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