缺失数据检查
来源:互联网 发布:深圳大数据协会 编辑:程序博客网 时间:2024/05/01 10:06
很多数据集里都包含了缺失数据,且不论什么原因导致了数据的缺失,就缺失数据问题我们应作何处理??
1.检查是否存在缺失
缺失数据形成的原因很多,可能是遗落,也可能是字符型数据与数值型数据混淆。阅读SAS log通常可以得到原因。
2.计算缺失值个数
对于数值型数据,计算缺失值个数可以通过proc means实现,而字符型数据则可以利用proc freq实现。
例如:
数值型数据
proc means data=yuyu n nmiss; /*n nmiss用于读取缺失与未缺失数个数*/
run;
字符型数据
proc format;
value $misscnt ' ' = 'missing' other = 'nonmissing';
run;
proc freq data=yuyu;
tables _character_ / nocum missing; /*_character_提示字符型数值类型*/
format _character_ $misscnt.;
run;
3.识别缺失值
知道缺失个数还不够,因为有些数据可以缺失,有些数据是不能够缺失的。如果要更进一步的了解缺失数据的情况,我们可以考虑用put语句。
title "listing of missing values";
data _null_;
file print;
set yuyu
if missing(Visit) then
put "Missing or invalid visit data for ID" Patno;
if missing(HR) then put "Missing or invalid HR or ID" Patno;
if missing(AE) then put "Missing value for ID" Patno;
run;
倘若所有观测都是有标号的,那么你可能还想知道到底是哪个标号数据缺失了,即找到缺失值的ID。
title "Listing of missing patient numbers";
data _null_;
set yuyu;
file print;
Prev_id = lag(Patno);
Prev2_id = lag2(Patno);
if missing(Patno) then put "Missing patient ID. Two previous ID's are:"
Prev2_id "and " Prev_id / @5 "Missing record is number " _n_;
else if notdigit(trim(Patno)) then
put "Invalid patient ID:" patno +(-1)". Two previous ID's are:"
Prev2_id "and " Prev_id / @5 "Missing record is number " _n_;
run;
附:数据yuyu结构类型
参考《cody's data cleaning techniques using sas》
数据,代码出自该书,代码作局部修改
- 缺失数据检查
- CSVReader读取数据缺失
- pandas处理缺失数据
- Python处理缺失数据
- 关于数据缺失
- 数据挖掘填补缺失数据
- 数据检查
- SAP ALO1 归档数据缺失
- 【R】数据缺失值处理
- sklearn 数据缺失值处理
- 数据中的缺失值处理
- 数据缺失的处理方法
- 数据清洗---缺失值处理
- 数据缺失的中文字符串
- 数据挖掘-处理缺失值
- pandas处理,填充缺失数据
- 【数据建模 缺失值处理】缺失值的处理
- 数据ETL面临的问题----数据缺失
- Qt 背景的添加
- hdoj1283
- MATLAB 简单的计算白色轮廓中像素点的个数
- 2010新编中国顶级黑客圈内人物资料和QQ,微博以及博客详解
- PHP连接mysql例子
- 缺失数据检查
- flex中的identify纠正
- volatile关键字
- ORACLE中方案的概念以及方案与数据库的关系
- SQL 标量函数-----> 取子串函数 、子串长度
- opendedup(sdfs)源码分析5之FakeFilesystem篇
- 郭天祥,我的大学六年
- 【计算几何】zjoi2008 risk
- 手机