- extracts the content of the table as a categorical array
- converts the categorical array into a string array
- erases the ' from the string array
- joins the string array across the column

1,458 views (last 30 days)

Hello,

I have table variable (Input_table) like this

''1'' ''8'' ''2'' ''5'' '1' '1' ''Z'' ''F'' ''1'' ''3'' ''C'' ''5'' ''Y'' ''U'' ''4'' ''Q'' ''3''

''4'' ''4'' ''0'' ''9'' '1' '8' ''B'' ''R'' ''1'' ''2'' ''E'' ''8'' ''1'' ''Z'' ''1'' ''N'' ''X''

I want to convert every row into one string so the output to be array of 2 rows

'182511ZF13C5YU4Q3'

'440918BR12E81Z1NX'

I have tried

join(char(table2cell(Input_table))

but I get the error

Error using char

Cell elements must be character arrays.

Guillaume
on 7 Aug 2019

I imported the data from an excel sheet as categorical array. It was somewhat manual to work to create my table

Yes, you made a complete mess of it. And you would be better off asking a new question on how to import the data correctly in the first place, rather than attempting to fix the mess afterward.

All the table variables are indeed categorical. Some of the categories have the quote ' embedded in the category (that is the ' you see when looking at the table is not the ' that matlab typically surround char arrays with, it's actual part of the data), others do not.

The simplest way to fix the mess after the fact:

join(erase(string(Exampletable{:, :}), "'"), '', 2)

which:

- extracts the content of the table as a categorical array
- converts the categorical array into a string array
- erases the ' from the string array
- joins the string array across the column

But again, a better approach would be to import the data correctly in the first place, so ask a new question.

Azzi Abdelmalek
on 7 Aug 2019

s={'1' '8' '2' '5' '1' '1' 'Z' 'F' '1' '3' 'C' '5' 'Y' 'U' '4' 'Q' '3'

'4' '4' '0' '9' '1' '8' 'B' 'R' '1' '2' 'E' '8' '1' 'Z' '1' 'N' 'X' }

a=cellstr(reshape([s{:}],size(s)))

Azzi Abdelmalek
on 7 Aug 2019

Edited: Azzi Abdelmalek
on 7 Aug 2019

s={'1' '8' '2' '5' '1' '1' 'Z' 'F' '1' '3' 'C' '5' 'Y' 'U' '4' 'Q' '3'

'4' '4' '0' '9' '1' '8' 'B' 'R' '1' '2' 'E' '8' '1' 'Z' '1' 'N' 'X' }

a=join(s,2)

You can add a delimiter

a=join(s,'',2)

Opportunities for recent engineering grads.

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

Start Hunting!
## 6 Comments

## Direct link to this comment

https://in.mathworks.com/matlabcentral/answers/475286-how-can-i-convert-table-of-chars-to-array-of-strings#comment_732841

⋮## Direct link to this comment

https://in.mathworks.com/matlabcentral/answers/475286-how-can-i-convert-table-of-chars-to-array-of-strings#comment_732841

## Direct link to this comment

https://in.mathworks.com/matlabcentral/answers/475286-how-can-i-convert-table-of-chars-to-array-of-strings#comment_732846

⋮## Direct link to this comment

https://in.mathworks.com/matlabcentral/answers/475286-how-can-i-convert-table-of-chars-to-array-of-strings#comment_732846

## Direct link to this comment

https://in.mathworks.com/matlabcentral/answers/475286-how-can-i-convert-table-of-chars-to-array-of-strings#comment_732906

⋮## Direct link to this comment

https://in.mathworks.com/matlabcentral/answers/475286-how-can-i-convert-table-of-chars-to-array-of-strings#comment_732906

## Direct link to this comment

https://in.mathworks.com/matlabcentral/answers/475286-how-can-i-convert-table-of-chars-to-array-of-strings#comment_732907

⋮## Direct link to this comment

https://in.mathworks.com/matlabcentral/answers/475286-how-can-i-convert-table-of-chars-to-array-of-strings#comment_732907

## Direct link to this comment

https://in.mathworks.com/matlabcentral/answers/475286-how-can-i-convert-table-of-chars-to-array-of-strings#comment_732916

⋮## Direct link to this comment

https://in.mathworks.com/matlabcentral/answers/475286-how-can-i-convert-table-of-chars-to-array-of-strings#comment_732916

## Direct link to this comment

https://in.mathworks.com/matlabcentral/answers/475286-how-can-i-convert-table-of-chars-to-array-of-strings#comment_732928

⋮## Direct link to this comment

https://in.mathworks.com/matlabcentral/answers/475286-how-can-i-convert-table-of-chars-to-array-of-strings#comment_732928

Sign in to comment.