How to convert "cell array" to "character array"

542 visualizaciones (últimos 30 días)
dmfwlansejr
dmfwlansejr el 8 de Jul. de 2021
Editada: DGM el 8 de Jul. de 2021
How to convert {'A1'} {'B1'} {'C1'} to 'A1' 'B1' 'C1'

Respuestas (3)

Jonas
Jonas el 8 de Jul. de 2021
the format 'A1' 'B1' 'C1' is not possible with character array, but 'A1B1C1' is possible:
asCell={'A','B','C'}; charArray=[asCell{:}]

Stephen23
Stephen23 el 8 de Jul. de 2021
C = {'A1','B1','C1'}
C = 1×3 cell array
{'A1'} {'B1'} {'C1'}
D = vertcat(C{:})
D = 3×2 char array
'A1' 'B1' 'C1'
or
D = char(C)
D = 3×2 char array
'A1' 'B1' 'C1'

DGM
DGM el 8 de Jul. de 2021
Editada: DGM el 8 de Jul. de 2021
It's kind of hard to tell what exactly you want, since your example isn't really proper syntax.
If you just have a scalar cell array with a char vector:
A = {'potato'};
B = A{:}
B = 'potato'
If you have a cell array with multiple elements, each containing a char, the answer depends on whether all the char vectors are the same size and what you expect the output to look like.
A = {'potato' 'tomato' 'grapes'};
vertcat(A{:}) % only works if they're all the same size
ans = 3×6 char array
'potato' 'tomato' 'grapes'
horzcat(A{:})
ans = 'potatotomatograpes'

Categorías

Más información sobre Data Type Conversion en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by