Writing IF STATEMENT that omits empty fields in different arrays of a structure
2 ビュー (過去 30 日間)
古いコメントを表示
I need writing an if statement that would exclude empty fields in a structured array (pictured attached). I am to make use of non-empty fields of M.id, M.xd and M.yd. I came up with this but not working:
for i=1:1:n % n is 100
if ~isempty M(i) % this is where my problem lies
for z=1:t % t is 5
min_dis_local=inf;
distanceL=sqrt( (S(i).xd-(M(z).xd) )^2
end
end
end
I got this error instead:
Error using isempty
Not enough input arguments.
回答 (1 件)
Dyuman Joshi
2023 年 1 月 25 日
編集済み: Dyuman Joshi
2023 年 1 月 25 日
You need to use () with isempty, otherwise it would assume the input to be a string array
y = [];
isempty(y)
isempty y
%even though x is not defined, it returns 0 when checked with isempty
isempty x
When you add ~ operator before isempty without (), it will through you an error, which is what you encountered
~isempty y
5 件のコメント
参考
カテゴリ
Help Center および File Exchange で Structures についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!