Error "not enough input arguments" in length function

I am trying to run a code but receiving an error at the 4th line with 'not enough input' for the length function. What can be inserted in further to remove the error.
function [coef] = ComputeCurve_EDIT (SUBJRAWSubj1S1)
coef = [];
i = 1; % matrix row index
NRrows = Length (SUBJRAWSubj1S1);
while (i <= NRrows) % while not end of matrix
x = []; % initialize to-be-filled vectors
y = [];
xnorm = [];
ynorm = [];
n = i; % keeps track of the number of samples on a given trial
trialNR = SUBJRAWSubj1S1 (i, 1);
while (SUBJRAWSubj1S1 (i, 1) == trialNR) % fill x and y coordinate vectors
x = [x; SUBJRAWSubj1S1 (i, 2)];
y = [y; SUBJRAWSubj1S1 (i, 3)];
i = i + 1;
if (i> NRrows)
break
end
end

3 Commenti

dpb
dpb il 13 Mag 2020
Modificato: dpb il 13 Mag 2020
Spell "length" correctly ... MATLAB is case-sensitive and you capitalized it...
NB: length() is potentially dangerous unless it is used on only vectors -- it returns max(size(x)) which for a 2D input can be either size(x,1) or size(x,2) depending on whether is taller or wider in aspect.
Use size(x,D) for the dimension of interest for more reliable code.
hello, thank you for your response.
I have a data with three columns with around 150 rows. trial number, x position and y position.
I want matlab to screen throught the length/ size of the rows in the columns and assign that variable as Nrows. What do you think should be the 'D' in size(x,D) because when i try size(x) it is returning not enough input argument.
Thank you for your help!
As said, if you are concerned about the rows, that's dimension 1 so the 'D' argument to size would be one.

Accedi per commentare.

Risposte (0)

Categorie

Richiesto:

il 13 Mag 2020

Commentato:

dpb
il 21 Giu 2020

Community Treasure Hunt

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

Start Hunting!

Translated by