1、数据简单查看参考
1.1、 查看数据描述性统计:describe()
1.2、 查看数据字段名:columns()
1.3、查看数据的类型以及缺失值情况info()
1.4查看前几行数据:head()
注:有一些算法,比如组合算法,要求分类变量为因子行变量;层次聚类,要求是一个距
离矩阵,可以通过str函数进行查看数据类型要求,有些算法对
注:可以初步观察是不是有量纲的差异,为后续的分析做准备
- 查看因子型变量占比情况:table/prop.table
注:可以为后续数据抽样做准备,看是否产生类不平衡的问题
2.数据缺失值处理
2.1 info()函数进行简单查看
2.2 isnull查看数据缺失值的情况,
2.3mean()、modain函数,可以进行缺失值的插补工作还有有knn、袋装、中位数方法
2.4missFores包中misssForest函数,可以进行随即森林方法插补
2.5可以用回归分析的方法完成缺失值插补工作
2.6如果样本量很多,缺失值数据很少,可以选择直接剔除的方法
3.数据异常值处理
3.1describe()函数进行简单的查看,比如最大值、最小值
3.2boxplot函数绘制箱线图
4.数据的抽样
sample函数进行随机抽样
caret包中的createDataPartition()函数对训练样本和测试样本进行等比抽样
caret包中createFold函数根据某一个指标进行等比抽样
DMrR包中的SMOTR函数可以解决处理不平衡分类问题
注:比如决策树算法中,如果样本严重不平衡,那么模型会出现欠拟合现象
5.变量的多重共线性处理
结合业务,先删除哪些和分析无关的指标
corrgram包的corrgram函数查看相关系数矩阵
caret包的findCorrelation函数查看多重共线性
如果相关性太大,可以考虑删除变量;如果变量比较重要,可以考虑主成分/因子分析进行降维处理
确定多种共线性的方法,一般相关系数>0.7,且P<0.05(F检验的显著性)时变量之间存在共线性
1、处理:变量剔除
2、 改变解释变量的形式、如log转换,时间序列采用增量型变量
3、 主成份分析
4、岭回归(目标函数后加上惩罚项)
5、增加样本容量
6、逐步回归法