size() function returns wrong size

15 views (last 30 days)
i have the following line of code:
s = size(k_distances)
k_distances is a 1x1 matrix:
but the size function returns a size of 1x2:
and then:
k_labels = zeros(s);
returns a 3x1 matrix that not all zeros!!
any idea what is happening?
thank you
danielle sisserman
danielle sisserman on 7 Nov 2020
John, I posted both code and pictures. thank you :)
danielle sisserman
danielle sisserman on 7 Nov 2020
Vasishta, turns out my break point was further along the script and I manged to change k_labels much after the assignment. my bad.

Sign in to comment.

Accepted Answer

Mario Malic
Mario Malic on 7 Nov 2020
k_labels should return 1x1 array with value of zero.
Did you clear workspace from previous runs?
From the documentation on function size
sz = size(A) returns a row vector whose elements are the lengths of the corresponding dimensions of A. For example, if A is a 3-by-4 matrix, then size(A) returns the vector [3 4].
If A is a table or timetable, then size(A) returns a two-element row vector consisting of the number of rows and the number of table variables.

More Answers (0)


Find more on Data Type Identification in Help Center and File Exchange


Community Treasure Hunt

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

Start Hunting!