How to use condition to output a new matrix
1 次查看(过去 30 天)
显示 更早的评论
I am using the following statement to
Sim_EVT is 1570x1 (double)
CA is 1570x1(double)
if (Sim_EVT > CB) && (Sim_EVT <(CB+CA)))
ClassB2 = CA.*0.7761194029850746;
else
ClassB2 = 0;
end
I need to output a new matrix of (1570x1) if the condition meets.
I am getting the following error
Operands to the || and && operators must be convertible to logical scalar values.
Error in AssetPathsPlot (line 53)
if ((Sim_EVT > CB) && (Sim_EVT <(CB+CA)))
0 个评论
采纳的回答
Star Strider
2019-6-14
Just use one &:
if (Sim_EVT > CB) & (Sim_EVT <(CB+CA)))
You can probably do ths in one line:
ClassB2 = (CA.*0.7761194029850746).*((Sim_EVT > CB) & (Sim_EVT <(CB+CA)));
Note: I cannot test this, since I do not have your data. It should work.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 MATLAB Mobile Fundamentals 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!