缺失值处理:
- 删除:如果每列或者行数据缺失值达到一定的比例,建议放弃整行或者整列
- 插补:可以通过缺失值每行或者每列的平均值,中位数来填充
sklearn缺失值API:sklearn.preprocession.imputer
imputer语法
Imputer(missing_values=’NaN’, strategy=’mean’, axis=0)
- 完成缺失值插补
- Imputer.fit_transform(X)
- X:numpy array 格式的数据[n_samples, n_features]
- 返回值:转换后的形状相同的array
pandas:dropna\ fillna 数据当中的缺失值:np.nan
数据降维
降维:维度----特征的数量
- 特征选择
- 主成分分析
特征选择
可以使用特征选择的两大原因
- 冗余:部分特征的相关度高,容易消化计算机性能
- 噪声:部分特征对预测结果有影响
特征选择就是单纯地从提取到的所有特征中选择部分特征作为训练集特征,特征在选择前和选择后可以改变值、也不改变值,但是选择后的特征维数肯定比选择前小,毕竟我们只选择了其中一部分特征
主要方法(三大武器):
- Filter(过滤式):Variance Threshold
- Embedded(嵌入式):正则化、决策树
- Wrapper(包裹式)
sklearn特征选择API
sklearn.feature_selection.VarianceThreshold
语法
VarianceThreshold(threshold = 0.0)
- 删除所有低方差特征
- Varance.fit_transform(X)
- X:numpy array格式的数据[n_samples, n_features]
-返回值:训练集差异地狱threshold的特征将会被删除
默认值是保留所有非零方差特征,即删除所有样本中具有相同值的特征
- X:numpy array格式的数据[n_samples, n_features]
主成分分析
PCA:
- 本质:PCA是一种分析、简化数据集的技术
- 目的:是数据维数压缩,尽可能降低原数据的维数(复杂度),损失少量信息
- 作用:可以消减回归分析或者聚类分析中特征的数量
PCA语法:
Sklearn.decomposition
PCA(n_components=None)
- 将数据分解为较低维数空间
- n_components:
- 小数:0~1 百分比 信息保存一般为90%~95%
- 整数:减少到的特征数量
- PCA.fit_transform(X)
- X:numpy array格式的数据[n_samoles, n_features]
- 返回值:转换后指定维度的array