1、“非数”NaN
在做数据统计时,一个缺失的数据可以用“非数”NaN(Not a Number)来代替,而不能用0来作为其值。
其实0/0 、无穷/无穷 在做运算的时候也会产生非数。
在MATLAB中用NaN或nan记述。
NaN的性质
(1)只要NaN参与四则元算或函数作用于非数,其结果也一定是非数,即具有传递性。
(2)非数没有大小的概念,因此不能进行逻辑运算,也不能比较两个非数的大小。
2、“空”数组
当数组的某些维数为0时,称该数组为空数组。
在复杂的计算中有时会产生空数组。也可利用空数组对其他数组进行赋值。
(1)空数组与全零数组不一样
(2)空数组确实是数组,不能把空数组看做是“虚无”,用which、who、whos可以看出
(3)可以用命令isempty来判断一个数组是否为空数组。是空数组返回1,不是返回0
(4)空数组在运算中不具备传递性
创建一个空数组,用一个空的[ ],用isempty判断是否为空数组,是返回1,否返回0
也可用某个维数为0的方式创建空数组
两个空数组相乘并不仍是一个空数组,空数组不像NaN一样,没有传递性。
两个重要命令:
(1)ndims( ):用于检查数组的维数,比如向量的维数为1,矩阵的维数为2.
(2)size( ):用于检查数组各维数的大小,还有一个命令length( ),可以给出数组所有维的最大长度。