MATLAB: How to loop over readmatrix

for loopimporting excel dataMATLABvariablexlsread

I have an excel file and I want to grab every 21st row out and label each row G_21,G_42 and so on. I am not sure how to do this?

Best Answer

In order to do that without reading all of the other rows and throwing out the other rows, then you need to know the last row (or the last row you want to import anyhow.) I will call that LastWantedRow below
filename = 'appropriatename.xlsx';
opts = detectImportOptions(filename);
rows = 21:21:LastWantedRow;
opts.DataRange = [rows; rows].'; %two column matrix, start and end row numbers
t = readmatrix(filename, opts);
However, you can only add row labels for table() and timetable() objects, not for matrices. readmatrix() is (mostly) for numeric matrix. You could construct
rownames = "G" + rows;
but you cannot attach those to a numeric matrix.