Converting string matrix from Excel to Matlab

10 views (last 30 days)
I have an excel document containing a matrix of strings (that is, each cell contains a word of varying length). If possible, I want to read this into Matlab so that I have a matrix of strings just as it is in Excel. In particular, I need to be able to reference the (i,j)th matrix element, which should contain an individual word/string.
For example, if cell A2 in excel contains "dog," I would like element (1,2) in matlab to contain the string 'dog'.
It seems like there should be a quick way to do this, but I can't get anything to work. Does anyone have any ideas? Let me know, thanks!!

Accepted Answer

Laura Proctor
Laura Proctor on 12 Apr 2011
Use XLSREAD with three outputs. The final output, raw, will contain a cell array with all of your data from Excel.
[num,txt,raw] = xlsread(filename)
A2 = raw{1,2}; % Will assign the element to variable A2

More Answers (1)

Walter Roberson
Walter Roberson on 12 Apr 2011
If you are on a Windows machine and have Excel installed, then xlsread() should be able to return the data in the form of cell arrays. You would need to use element{1,2} instead of element(1,2) but that adjustment should not be difficult.
  1 Comment
John
John on 12 Apr 2011
Unfortunately I'm working on a mac laptop. Is there any way to do this with a mac?

Sign in to comment.

Categories

Find more on Data Import from MATLAB in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!