问题1和问题2使用UCI机器学习存储库中的CKD数据集。数据来自患有和未患有CKD的患者的血液检查和其他测量值。数据集中总共有400条数据,每名患者一条,这些患者在2015年7月之前接受了大约两个月的治疗。
每条数据有24个预测变量及1个预测目标变量。预测目标变量有两个值,分别是1(患有CKD的数据)和0(没有患CKD的数据)。在400条数据中,250条数据属于患有CKD的范畴,另外150条数据属于没有患CKD的范畴。
根据2.2节的介绍,使用Pandas工具包的DataFrame类对象可以实现更加高效的缺失值统计和缺失值填充。在进行数据分析前,首先要获取被分析的数据。问题1和问题2所要分析的数据保存在CSV文件中,利用Pandas工具包提供的read_csv函数可以方便地从CSV文件中读取数据并返回保存数据的DataFrame对象。
代码2-7显示了CSV数据文件的读取方法。
代码2-7 读取CSV数据文件
程序运行结束后,可得到下面的结果:
从输出结果可以看到,数据文件中共包含400条数据。问号(?)表示缺失值。
读取数据后,问题1可使用DataFrame对象的isna、any和sum方法实现缺失值的快速统计,问题2可使用DataFrame对象的fillna和mean方法实现缺失值的快速填充。