【发布时间】:2013-09-11 12:53:09
【问题描述】:
我需要以下代码方面的帮助:
if x(:,3)>x(:,4)
output=[x(:,1)-x(:,2)];
elseif x(:,3)<x(:,4)
output=[x(:,2)-x(:,1)];
else
output=NaN
end
这是一个示例数据:
matrix x output
10 5 1 2 -5
10 5 2 1 5
NaN 1 1 3 NaN
我不确定如何使代码正常工作。它只接受第一个参数并忽略 else if 和 else 参数。请帮忙。谢谢。
【问题讨论】:
-
一定要检查
if声明:if ... elseif ... else ... end(else和if之间没有空格) -
我改了,但没有解决问题
-
请注意,如果最后两列彼此相等,您的输出也将为
NaN。如果这是不可取的,请使用>=而不是>或为这种可能性添加另一个索引。
标签: matlab if-statement vectorization