Error in if condition
2 次查看(过去 30 天)
显示 更早的评论
hi everybody,
I have a two different variables; enthleft and enthright. I want to turn NaN values to Zero but when both variables get NaN values just one of it turn to Zero. How to solve this porblem?
if any(isnan(enthleft), 'all');
enthleft = 0;
elseif any(isnan(enthright), 'all');
enthright = 0;
end
0 个评论
采纳的回答
Geoff Hayes
2020-3-24
Ararat - don't use the elseif and just use two if statements (since you want to apply a specific action to both variables)
if any(isnan(enthleft), 'all');
enthleft = 0;
end
if any(isnan(enthright), 'all');
enthright = 0;
end
By the way, your above code will set all elements of the enthleft or enthright arrays to zero if at least one element is NaN. Is this the intended behaviour?
0 个评论
更多回答(1 个)
Sriram Tadavarty
2020-3-24
Hi Ararat,
Based on the information provided, the following will help
if any(isnan(enthleft), 'all') && any(isnan(enthright), 'all')
enthleft = 0;
enthright = 0;
end
Hope this helps.
Regards,
Sriram
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!