Read a certain amount of rows from a column of an excel file
Show older comments

I need matlab to start taking values at row 3 and run through the column to row 367. Afterwards, I need it to read 368 through 732, and so on. So I need it to read the column in sections of 365, without the user knowing how many times.
I know that:
[num, ~, ~] = xlsread('datafile');
x = num(3:367,4);
would get me the right results, but I'm not allowed to do that because this is a course assignment and it needs to be able to read different data sets as well.
4 Comments
madhan ravi
on 18 Apr 2019
" I am not allowed to do that " Why?
Fangjun Jiang
on 18 Apr 2019
You can specify range in xlsread(). See the help file.
Adam Danz
on 18 Apr 2019
As Fangjun Jiang mentioned, you need to use the xlRange input. Here's an example:
Customize that example to suit your needs. If you get stuck, be more specific about what the problem is.
Walter Roberson
on 18 Apr 2019
Note: if you do not happen to be on MS Windows with Excel installed, then xlsread() reads all of the file and then discards the parts outside of the range you specified.
Accepted Answer
More Answers (1)
Aylin
on 18 Apr 2019
Hi Rylan, as Fangjun and Adam have both commented, you can provide a range to xlsread.
However if you have R2019a, I would also recommend using readmatrix with the Range name-value pair to avoid writing Excel-style ranges (like "D3:D367"):
daily_maximum = readmatrix("datafile.xlsx", "Range", [3 4 367 4]);
If your column is at different positions in the file, but always has the same name, then it might be convenient to use readtable instead and index into the variable name. This way you wouldn't need to worry about changing your code when the column position changes:
data = readtable("datafile.xlsx");
daily_maximum = data.DailyMaximum;
I hope this helps!
Rylan
2 Comments
Adam Danz
on 18 Apr 2019
Note that you can also achieve flexible column indexing by reading in the headers and chosing the column index by using strcmp().
Rylan Thronburg
on 18 Apr 2019
Edited: Rylan Thronburg
on 18 Apr 2019
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!