2.1 引入问题
2.1.1 问题描述
慢性肾脏病(CKD)是指超过三个月持续的肾脏损害和功能下降。在这段时间内,肾脏清除血液中代谢废物的能力逐渐下降,肾脏无法正常执行其功能。CKD作为一种非传染性疾病,在全球范围内已经有大量死亡病例。与乳腺癌或前列腺癌相比,CKD每年的死亡率更高。它是全球范围内一个令人关注的公共卫生问题,所以预测该病对采取必要的预防措施具有重要作用。
CKD一般进展缓慢,早期没有明显的症状,所以大多数患者都没有意识已患病,导致不能在早期就发现疾病并接受治疗。随着时间的推移,病情恶化,伴随着肾功能的衰竭,CKD终末期需要进行肾透析或者肾移植。无论是检测、诊断还是治疗,都需要很高的费用,而且CKD患者的死亡率也会提高。因此,在CKD早期就进行诊断和及时治疗可以延缓或者预防CKD的终末期。如果CKD患者在早期就能使用低成本的计算机辅助诊断来分析身体状况,不仅可以降低整个患病时期诊断的成本,还可以及早治疗,延缓病情的发展。
在建模、预测前,通常需要先对数据做描述性统计分析,以发现并处理数据中的异常值和缺失值,从而避免异常值和缺失值对建模效果带来负面影响。其中,缺失值是指缺失的数据项,如某用户在填写调查问卷时,没有填写“年龄”一栏的信息,那么对于该用户填写的这条数据来说,“年龄”数据项就是缺失值;异常值是指虽然有值但值明显偏离了正常的取值范围,如针对18~30岁成年人的调查问卷中,某用户填写调查问卷时将年龄误填为2。
本章以CKD数据为例展示缺失值的发现和处理方法,包括两个问题:一是数据中缺失值的统计,二是数据中缺失值的填充。
【问题1】缺失值的统计:统计各数据项缺失值的数量,并统计含缺失值的数据条数。对于一条数据来说,只要有一个数据项是缺失值,它就是含缺失值的数据。
【问题2】缺失值的填充:当含缺失值的数据比例较高时,直接删除这些数据会导致可用数据量减少,进而影响建模效果。因此,需要根据非缺失值对缺失值进行填充。
课程思政:问题求解与计算思维