SAS中当一个变量的值未定义的时候,可以认为是缺失值, missing values。
表现
如果是数值型,则用英文句号表示缺失值,如果是字符型,则用空白表示缺失值。
缺失值判断
可以用missing()函数判断是否是缺失值,函数返回1表示是缺失值,示例如下:
缺失值的比较
缺失值比正常的字符或者数字都小,可以用于比较,示例如下:
缺失值的运算
直接用运算符计算带有缺失值的变量,结果仍为缺失值,不过sum函数中的参数中可以有缺失值,不影响sum的结果。示例如下:
上面的例子中,第三行的col4和col6都出现了缺失值,但col5是用Sum函数计算的,没有缺失。
PROC FORMAT中LOW关健字对缺失值的归类
PROC FORMAT中,如果类型为数值型,则LOW关健字不包括缺失值,需要用other关键字来处理。如果类型为字符型,则LOW关健字是包括了缺失值的,示例如下:
上面的例子中 intfmt对应数字型, LOW不包含缺失值,因此第3行被归为other。 charftm中 LOW包括缺失值,因此col3均为normal。