Trying to load a matrix from an Excel file with xlsLoadVars

User ForumTrying to load a matrix from an Excel file with xlsLoadVars
marvin2jh asked 2 years ago

I always use the below to load my data. But it is very cumbersome because I use xlsx file.

capt = 24;
nvar = 32;

load ytemp[capt,nvar]=c:\set1.txt;


So I tried to use the following command: xlsLoadVars("set1.xlsx");

It works. But it loaded 32 vectors (24 by 1). The dataset is 24 by 32.

How can I load the dataset file(xlsx) to a 32 by 24 matrix??

Please let me know!

1 Answers
aptech Staff answered 2 years ago

The spreadSheetReadM command is will read in Excel data as a matrix. For example if you want to read a 24x5 matrix from the cells starting at B2 from a file named set1.xlsx:

my_matrix = spreadSheetReadM("set1.xlsx", "B2:F25", 1);

You can use the function xlsMakeRange to find the spreadsheet row number and column header that correspond to a numerical row/column combination. For example, to find out the spreadsheet row/column for the 24th row and the 32nd column:

print xlsMakeRange(24, 32);

will return:


More information on reading and writing Excel data can be found here.