size

6 visualizzazioni (ultimi 30 giorni)
skyimager
skyimager il 31 Mag 2012
VAR_START =
9 12 14 17 24 31 34 37 40 43 46 49 52 55 58 61 64
>> NVAR = size(VAR_START)
NVAR =
1 17
What is the function of 'size' here???? why is it giving 1 17...???? I am srry bt i cannot understand!!!
  1 Commento
Oleg Komarov
Oleg Komarov il 31 Mag 2012
For future reference whenver you don't know wha rt a function does, doc size, or use F1

Accedi per commentare.

Risposta accettata

Image Analyst
Image Analyst il 31 Mag 2012
That's just the way size works. It's kind of like they expect size() to be used with arrays that are 2 dimensions or more. Get used to it. It says your "array" is 1 row by 17 columns. If you want just the "17" and not the "1" and you know in advance that you have a 1 dimensional array, then use length() function instead of the size() function. The length() function will give you 17 - a single number - without it being a 2 element result with the unhelpful "1" as the first element. length() gives you the length of the longest dimension, which is kind of confusing, so I use length() for 1D arrays (and only for 1D arrays), and size() for 2D or higher dimensional arrays.

Più risposte (1)

Honglei Chen
Honglei Chen il 31 Mag 2012
Because VAR_START is a 1x17 vector, i.e., number of rows is 1 and number of columns is 17

Categorie

Scopri di più su Resizing and Reshaping Matrices in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by