MATLAB: How to select some specific rows from excel

excelrangeselect

I have a problem to select specific rows meeting criterion from excel.
The third column in my data is the criterion. I want to select the rows whose third column numbers are in a certain range, and then keep the whole row and create a new excel file for it.
I mainly have three questions:
a. In what format should I input my data? Should I use xlsread or input it as a table?
b. Which type of data is more convenient for selection and output as excel? Double, string, cell?
c. What function should I use to select certain rows?
Thank you if anyone could help me.

Best Answer

Using xlsread, you can pull in the row you wanted as follows:
filename = 'dummy.xls';
data = xlsread(filename); %import data
columnData = data(:,3); %pull out column
This should pull your data out as an array of doubles, and then you can select rows using comparisons to filter
inRangeIndexes = find(columnData<lowerRange & columnData>upperRange);
newDataSet = data(inRangeIndexes,:); % contains only desired rows
Then, you can export your new data set using xlswrite.