Text variable in 'cell' data type.

1 view (last 30 days)
I'm trying to read a text variable from a .csv file into desktop Matlab 2015a. Matlab reads it as a 'cell' type. Is there a way to convert the cell into a matrix, or have Matlab read the data directly into a matrix type? I'm using the data importation wizard. I've tried 'cell2table' and then converting the table to something useful with 'table2array' but that gives me back a cell again. I've also tried subsetting with differing kinds of brackets, but can only get the first or last entry that way.
  1 Comment
James Tursa
James Tursa on 18 Sep 2015
Edited: James Tursa on 18 Sep 2015
Please post a short example of your code so we can comment on it and offer suggestions or corrections. Accessing the contents of the cell is done with the curly { } brackets.

Sign in to comment.

Accepted Answer

Kirby Fears
Kirby Fears on 18 Sep 2015
Edited: Kirby Fears on 18 Sep 2015
Hi Simon,
The cell2mat function will attempt to convert your cell into a matrix. If your csv file contains mixed data (some numeric data and some strings), you will need to isolate the numeric part first.
Below is an example of extracting the numeric part of a cell.
C={'date','value','other';1,3,5;3,2,1}
numC=cell2mat(C(2:end,:));
You can also try the readtable function. If your csv file contains a matrix of data with column headers on top, it should give you a nice table in your workspace where the numeric data can be easily extracted into an array if necessary.

More Answers (0)

Categories

Find more on Cell Arrays in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!