avatar

特征降维-主成分分析

一、模块

1
sklearn. feature_selection

二、定义

高维数据转化为低维数据的过程,在此过程中可能会舍弃原有数据、创造新的变量

使数据维数压缩,尽可能降低原数据的维数(复杂度),损失少量信息。

*应用: *回归分析或者聚类分析当中

image.png

原理:找到一条合适直线,通过一个矩阵计算得出主成分分析的结果

三、API

  • sklearn.decomposition.PCA(n_components=None)

    • 将数据分解为较低维数空间

    • n_components

      • 小数:表示保留百分之多少的信息
      • 整数:减少到多少特征
    • PCA. fit_transfor( X) X :numpy array格式的数据

    • [n_samples, n_features]

    • 返回值:转换后指定维度的array

四、代码实现

1
2
3
4
5
6
7
8
9
10
11
from sklearn.decomposition import PCA

def pca_demo():
    #pca降维
    data = [[2,8,4,5],[6,3,0,8],[5,4,9,1]]
    #1、实例化一个转换器类
    transfer = PCA(n_components=2)
    #2、调用fit_transform
    data_new = transfer.fit_transform(data)
    print("data_new: \n",data_new)
    return None

五、运行结果

1
2
3
4
data_new: 
 [[ 1.22879107e-15  3.82970843e+00]
 [ 5.74456265e+00 -1.91485422e+00]
  [-5.74456265e+00 -1.91485422e+00]]

评论