2013-05-01 27 views
10

için MATLAB Char dizisi dönüştürme, C: Bu şekilde dizeleri, B, bir hücreye dönüştürülebilir nasılMATLAB Char dizisi ile başlayan dize

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{1} = 'APR' 
B{2} = 'MAY' 

Düzenleme: A bir hücredir ve fonksiyon cellstr kullanarak hatayı

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

S sizin hata mesajında ​​kim? –

+0

A = data {3,1} (bazı hücre verileri) var, böylece A şimdi <2x6 char>. Sonra B = cellstr (A) giriyorum ve hatayı alıyorum. – rwolst

+0

Verileri soruya veya pastebin'e koyabilir misiniz? –

cevap

9

kullanın aşağıdaki işlevi verir:B karakter dizisi, T

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

için

>> B = cellstr(A) 

B = 

    'APR' 
    'MAY' 

>> B{1} 

ans = 

APR 
2

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

yerine Franck yukarıda açıklandığı gibi daha sonra 'cellstr kullanabilirsiniz, ilk olarak bir 2D matrisine atamak hata verir.

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