MATLAB Answers


Importing Matrix from text or csv files

Asked by Brian
on 20 Feb 2012

I have a large matrix that I'd like to import, preferably in one command into a few different Matlab variables. I have been attempting to use "importdata" but it doesn't seem to respect the row headers because many of them are numeric (CUSIPS). I have a file that's roughly 1000x500 with one row of column headers and one column of row headers. Does anyone know how I can import this data all at once? If not all at once, what's the easiest way to go about importing it all when I'm not quite sure how many columns I will have in total? In the end I should have two arrays of column headrers (text) and a matrix of numerical data.

Thanks a lot, Brian



1 Answer

Answer by the cyclist
on 21 Feb 2012
 Accepted answer

Personally, I like the readtext() function from the FEX for mixed-type files:

This is not to be confused with the MATLAB function textread(), whose help file has the quote "If the file contains any text data, an error is produced." :-)


on 21 Mar 2012

I am getting the data to import into one large cell where I have actual text data in column 1 and dates in row1. No matter what I try I can't get the dates to be converted to something that Matlab will recognize. Any idea how to do this? My dates are imported but have no '' around them.


the cyclist
on 21 Mar 2012

I think you should launch a new question on this, and add more detail around what the text that you are importing looks like (possibly with an example).

on 19 Apr 2012

Thanks - just did so here ->

Join the 15-year community celebration.

Play games and win prizes!

Learn more
Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!