作用:在高维变低维的过程中,有一些特征值相关系数很高,非常相关(比如特征值数据都为零。则可通过PCA进行筛选),所以会舍弃掉这些特征值,使得维数降低,且保持最多的特征
1.定义
数学描述:将二维坐标变一位坐标,并保留足够的点
将点左乘一个矩阵(固定),从而降维
2.API
sklearn.decomposition.PCA(n_components=None)
中参数若为2,则是转换为2维
若是小数,则是保留百分之多少的信息
代码实现:注意data是三行四列,四个特征值
from sklearn.decomposition import PCA
def PCA_demo():
"""
将数据分解为较低的维数
"""
data = [[2,8,4,5], [6,3,0,8], [5,4,9,1]]
#注意这是三行四列的矩阵,4个特征值
#1.赋值实例化
transfer = PCA(n_components=2)
#2.使用函数
data_new = transfer.fit_transform(data)
print('data_new:\n',data_new)
PCA_demo()
结果
data_new:
[[ 1.22879107e-15 3.82970843e+00]
[ 5.74456265e+00 -1.91485422e+00]
[-5.74456265e+00 -1.91485422e+00]]