EDA
关于前期准备:cmd中在base下安装相应的package: conda install + package.name 或者 pip install + name
(太小白,前期捣鼓太太久,,代码写了一部分,先跟着指导课件敲一遍代码,熟悉python;下面内容参考Datawhale指导手册)
1.数据处理:numpy, pandas, scipy
可视化:matplotlib, seaborn
2.载入训练集和测试集
(把文件移到了相同目录下,没有输入路径)
使用 head 和 tail 函数可以简要查看头和尾数据,append 可以将两者连接在一起;shape 可以查看数据框维度
3.查看数据情况
describe 可以提供每一列的统计值情况;info 可以提供每一列的数据类型
4. 判断数据是否缺失以及异常情况
缺失值:isnull().sum() 可以统计每一列的缺失值个数(inplace = True 表明在原位置上更改)
缺失值一般处理方式:如果存在过多可以删掉,如果比较少,可以进行填充(可利用统计值,也有些模型可以自己优化)
对于异常值,可以先用 info 看数据类型,对于某些特殊的(如object)可以单独查看,value_counts() 可以查看每种分类水平以及计数,对于某些异常的水平,可替换为缺失值,使用replace() 函数。
还有些变量水平严重倾斜(所有数据几乎都是同一水平),则一般无意义,可删除 del 。
5.了解预测值(响应变量)的分布
直接调用该列,value_counts() 查看不同水平
(1) 总体分布概况
作图:原数据,log转换,johnsonsu
(注:非正态分布,拟合之前需进行转换)
查看偏度和峰度(看数据的分布形态,和正态分布做比较,正态分布的偏度和峰度看做零。如果实际中偏度峰度不为0,即表明变量存在左偏右偏,或者是高顶平顶)。
查看频数(直方图),也可发现异常值,可填充或删除(可以log变换后再作图)
6.类别特征分析
对于某些,可直接利用 select_dtypes() 来区分类别特征和数字特征;不适应,则自行打印
(1)查看unique分布
可利用 for 函数和 nunique 打印出每个类别特征的每个种类水平的数目
(2)箱型图可视化,每个变量对自身不同水平作箱型图,预测变量(响应值)为纵坐标
(3)小提琴图可视化,纵坐标为预测变量,for 函数同时对多个类别特征变量作图
(4)柱形图可视化(?还在研究中)
(5)每个类别水平频数可视化,纵坐标为频数
7.数字特征分析
(1)相关性分析,corr 函数,查看预测变量和每个解释变量间的关系
可以可视化
(2)查看偏度和峰度
(3)每个变量可视化作图,查看分布
(4)两两变量之间可视化 pairplot
(5)回归关系可视化,每个变量和预测变量可视化回归作图