MATLAB Answers

0

Readtable from i-th row to last row

Asked by Clemens Gersch on 2 Sep 2019
Latest activity Commented on by Clemens Gersch on 4 Sep 2019
Hi,
I am looking for a solution to read an Excel table via readtable from a specific row on down to the last row. I know in which row to start, but I don't know in before which row exactly is the last row.
The only idea I had by now was doing something like
data = readtable(workbookFile, 'sheet', sheetName, 'ReadVariableNames', true, 'FileType', 'spreadsheet', 'UseExcel', false, 'Range', '7:50000');
where 7 ist the row to start the import and 50000 is a valua that high, it would never be reached. The next step would be to delete all the empty rows, that were created (I'm still figuring out how to do it but thats not a part of my question).
That doesn't seem to be very efficient to me. Does anybody have a better solution?

  0 Comments

Sign in to comment.

Products


Release

R2018b

2 Answers

Answer by Jeremy Hughes on 3 Sep 2019
 Accepted Answer

Try this
opts = detectImportOptions(filename,'NumHeaderLines',6)
T = readtable(filename,opts)

  1 Comment

That's it. Thank you very very much.

Sign in to comment.


Answer by KALYAN ACHARJYA on 2 Sep 2019
Edited by KALYAN ACHARJYA on 2 Sep 2019

Readtable from i-th row to last row?
load table, then
or
data=readtable(filename);
i=??? % define
data_read=data(i:end,:)

  1 Comment

I tried that first but that way readtable is not able to detect the table structure of the file to import.
I have an excel-file with 6 rows to drop and then there is a timetable with headlines in row 7, dates in columns 1 (starting in row 8) and the actual data from (8,2) on. I want to import the timetable.
If I just load the data without specifieing the first rows to be dropped, all the cells are strings and I need to convert the cells in the table again, which is not so nice.

Sign in to comment.