size() function returns wrong size

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

4 个评论

May be k_distances variable is called inside another loop and its size is varying. Can you show full code ?
Please don't post pictures of your code. You can paste in text more easily, and that text can now be copied by those who would try to help you.
John, I posted both code and pictures. thank you :)
Vasishta, turns out my break point was further along the script and I manged to change k_labels much after the assignment. my bad.

请先登录,再进行评论。

 采纳的回答

Mario Malic
Mario Malic 2020-11-7

0 个投票

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.

更多回答(0 个)

类别

在 帮助中心 和 File Exchange 中查找有关 Characters and Strings 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by