R语言学习系列14-缺失值及缺失模式.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
14. 缺失值及缺失模式 目录: 一. 什么是缺失值? 二. 识别缺失值 三. 缺失模式及处理办法 四.判断缺失模式 正文: 一、什么是缺失值? 1. 缺失值 缺失值是任何数据集中经常出现的问题,无回答、录入错误等调查中常会出现的现象都会导致缺失数据。缺失值通常会用一些特殊符号进行标记,比如9999、1990年1月1日,或者是“*”、“?”、“#”、“$”等符号。 还有一种数值缺失情况,是统计的时间窗口并非对所有数据都适合。例如,需要“客户近6个月内的最大存款余额”,对于那些建立账户尚不满6个月的客户来说,统计出来的数值与想要得到的就可能存在差距。 缺失数据会影响分析工作的进行和统计工作的效率,还会导致分析的偏差。数据使用者、分析者往往缺乏缺失值处理方面的知识,仅仅对数据进行简单删除或插补会影响数据规模和数据结构,进而影响分析结果。 一般来说,对缺失值的填充方法,最好是先判断其缺失模式,再建立一些适当模型,根据数据的分布来填充一个更恰当的数值。 R语言中,缺失值用NA表示。 2. 缺失值的产生原因 (1) 有些信息暂时无法获取 (2) 有些信息是被遗漏的 (3) 有些对象的某个或某些属性是不可用的 (4) 有些信息(被认为)是不重要的 (5) 获取这些信息的代价太大 (6) 系统实时性能要求较高 3. NA与NULL区别: NA表示数据集中的该数据遗失、不存在。在针对具有NA的数据集进行函数操作的时候,该NA不会被直接剔除。如 x-c(1,2,3,NA,4) 则mean(x)为NA 如果想去除NA的影响,需要显式告知mean方法,如 mean(x,na.rm=T) 另外,NA会“追随”其他数据的类型。 NULL表示未知的状态。它不会在计算之中,如 x-c(1,2,3,NULL,4) 则mean(x)为2.5 NULL是不算数的,length(c(NULL))为0,而length(c(NA))为1。可见NA“占着”位置,它存在着,而NULL没有“占着”位置,或者说,“不知道”有没有真正的数据 注:NaN表示“非数,不可能的值”,其识别函数为is.NaN() Inf和-Inf分别表示正无穷和负无穷,其识别函数为is. infinite() 4. 处理缺失值的基本步骤 (1) 识别缺失值 (2) 判断缺失模式(完全随机缺失、随机缺失、完全非随机缺失) (3) 处理缺失值(删除、用合适的方法插补) 5. 处理缺失值的方法及包 二、识别缺失值 在数据预处理中,首先要做的通常是判断是否存在缺失值。 判断是否为缺失值的函数是is.na(),可以应用于向量、数据框等多种对象,返回逻辑值。 另一个常用函数是VIM包中的complete.cases(),判断每个观测样本是否完整,TRUR表示完整。 library(mice) #数据集nhanes2为mice包自带数据集,25个观测值,4个变量 is.na(nhanes2) #判断每个值是否为缺失值,只粘贴部分运行结果 age bmi hyp chl 1 FALSE TRUE TRUE TRUE 2 FALSE FALSE FALSE FALSE sum(is.na(nhanes2)) #共有几个缺失值 [1] 27 #计算每列的缺失百分比 Rate - function(x){sum(is.na(x))/length(x)*100} apply(nhanes2,2,Rate) age bmi hyp chl 0 36 32 40 complete.cases(nhanes2) #判断每个样本是否完整 [1] FALSE TRUE FALSE FALSE TRUE FALSE TRUE [8] TRUE TRUE FALSE FALSE FALSE TRUE TRUE [15] FALSE FALSE TRUE TRUE TRUE FALSE FALSE [22] TRUE TRUE FALSE TRUE sum(!complete.cases(nhanes2)) #不完整样本的个数 [1] 12 三、缺失模式及处理办法 1. 缺失模式 缺失模式是描述缺失值与观测变量间可能的关系。从缺失的分布来讲,缺失值可以分为: 完全随机缺失(MCAR): 某变量缺失值发生的可能性与其他变量无关也与该变量自身无关。换句话说,某变量缺失值的出现完全是个随机事件。可以将存在MCAR变量的数据看作是假定完整数据的一个随机样本(Rubin 1976); 注:MCAR数据缺失的理想状态,但是可靠的缺失最大阈值是数据集总数的5% 随机缺失(MAR): 某变量出现缺失值的可能性与模型中某些观测变量有关而与该变量自身无关

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档