Determining the second last row

Hi there,
How would you code the number of rows minus one? Below I use size() to find the number of rows, but I want to set nrows to the number or rows minus 1.
Many thanks
sch_cycle=xlsread('C:\Autonomie practice\cycle.xls','Input_data');
nrows = size(sch_cycle,1);

 Réponse acceptée

Jonathan Sullivan
Jonathan Sullivan le 16 Mar 2012

0 votes

sch_cycle=xlsread('C:\Autonomie practice\cycle.xls','Input_data');
nrows = size(sch_cycle,1)-1;

Plus de réponses (1)

Dr. Seis
Dr. Seis le 16 Mar 2012

0 votes

If you mean you want to set "sch_cycle" to have nrows - 1, then no need to actually determine "nrows" beforehand (just use "end"):
sch_cycle = sch_cycle(1:end-1,:);
You can setup an "if" statement in order to make sure "nrows" is greater than 1.

3 commentaires

Sean de Wolski
Sean de Wolski le 16 Mar 2012
or you could use max:
sch_cycle(max(1,size(sch_cycle,1)-1),:)
Dr. Seis
Dr. Seis le 16 Mar 2012
Looks like "end" will still work there, too:
sch_cycle(1:max(1,end-1),:); % For all rows except last row
sch_cycle(max(1,end-1),:); % For just second to last row
John
John le 16 Mar 2012
Thanks for all the suggestions guys.

Connectez-vous pour commenter.

Catégories

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by