如何检查矩阵中的值是否未定义?

How t check if a value is undefined in a matrix?

我有一个矩阵ratiotest:= [undef;undef;4].

Local i
Local ratiotest

for i,1,rowDim(ratiotest),1
 if ratiotest[i] = "undef" Then
  ∞→ratiotest[i]
 end if
endfor

但是我得到了"Error: Variable is not defined"

有没有办法检测未定义的变量?我在代码中遗漏了什么?

使用结构IfFn。第四个参数将被返回,如果 第一个参数未定义。因此

IfFn(x,false, false, true) 

仅当 x 未定义时才成立。

遇到了同样的问题,soegaard 的解决方案无效。我唯一能做的就是将表达式转换为字符串并测试它是否为 "undef"。这段代码将returnlist2,其中list1的undef元素替换为0。

for i1,1,dim(list1)
    list_str:=string(list1[i1])
    list2[i1]:=iffn(list_str="undef",0,list1[i1])
endfor