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

756 Ansichten (letzte 30 Tage)
dmfwlansejr
dmfwlansejr am 8 Jul. 2021
Bearbeitet: DGM am 8 Jul. 2021
How to convert {'A1'} {'B1'} {'C1'} to 'A1' 'B1' 'C1'

Antworten (3)

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

Stephen23
Stephen23 am 8 Jul. 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 am 8 Jul. 2021
Bearbeitet: DGM am 8 Jul. 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'

Kategorien

Mehr zu Data Types finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by