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

在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",发现自动保留了一个特征。

你可能感兴趣的:(pca库python)