用Python的sklearn库进行PCA(主成分分析)

来源:互联网 发布:软件下载网线 编辑:程序博客网 时间:2024/05/19 16:38

在python的sklearn的库里面集成很多机器学习算法的库,其中也包括主成分分析的方法。

接下来讲讲怎么在python里面使用pca算法

首先要导入库:

from sklearn.decomposition import PCA

下面是官网上的例子:

>>> X = np.array([[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]])>>> pca = PCA(n_components=2)>>> pca.fit(X)PCA(copy=True, n_components=2, whiten=False)>>> print(pca.explained_variance_ratio_) [ 0.99244...  0.00755...]

先创建一个PCA对象,其中参数n_components表示保留的特征数,默认为1。如果设置成‘mle’,那么会自动确定保留的特征数

最后显示的 参数 explained_variance_ratio_:array, [n_components]返回 所保留的n个成分各自的方差百分比,这里可以理解为单个变量方差贡献率,

可以看到第一个特征的单个变量方差贡献率已经到达0.99,意味着几乎保留了所有的信息。所以只保留一个特征即可

>>> import numpy as np>>> from sklearn.decomposition import PCA>>> X = np.array([[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]])>>> pca = PCA(n_components='mle')>>> pca.fit(X)# PCA(copy=True, n_components=2, whiten=False)>>> print(pca.explained_variance_ratio_)[ 0.99244291]
现在我们将n_components设置成"mle",发现自动保留了一个特征。


1 1
原创粉丝点击