how can i know if x position of a vector is empty?
6 次查看(过去 30 天)
显示 更早的评论
im trying this to know if that element(1,2) is empty or zero, to make a decision from that condition
if (ps1(1,2))==0
paredes1=1;
else
paredes1=length(ps1);
end
i was watching function like isempty or ismissing but its doesnt works.
1 个评论
per isakson
2022-6-21
IMO, never use the function length(M) when M is an array. With vectors its ok. Use size(M,1) and size(M,2), respectively.
采纳的回答
Image Analyst
2022-6-21
Element (1,2) of a numerical array will never be empty. It can't be. A whole array can be empty, or you can set a whole column or row of a matrix to null ([]) which will delete the column or row, but then it will be gone and the array will be smaller. It will not be empty.
To determine if that element is 0 you can simply do
if ps(1,2) == 0
% That element is 0.
end
0 个评论
更多回答(1 个)
Karan Kannoujiya
2022-6-21
Hi Erick,
So you want to check whether a element is ps1(in your case) is 0 or not.
So, isempty or ismissing function will not work here. Because 0 is itself a element. If in a vector there is 0 it doesn't mean it is empty or missing. For checking a vector element for 0 then you must check by indexing as you have done.
therefore, isempty function is used to check if a memory location is allocated whether there is an element present or not.
for e.g lets take a string str=["abc" "xyz" ""]
So, in str at pos 3 we have allocated memory but there is no element present there
5 个评论
Image Analyst
2022-6-21
A 1x2 vector (x,y) will have a length of 2 since the length is the length of the longest dimension. You should use size():
[rows, columns] = size(ps1)
By the way did you see my explanation below?
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!