Python 使用 PCA 降维:示例代码
使用 Python 的 PCA 进行降维
本示例代码演示如何使用 Python 的 sklearn 库中的 PCA 方法对数据进行降维。代码展示了如何使用 PCA 提取主成分,计算贡献比,并生成降维后的数据。
import numpy as np
import matplotlib.pyplot as plt
from sklearn.decomposition import PCA
x = np.array([[1, 2], [1.5, 1.8], [5, 8], [8, 8], [1, 0.6], [9, 11]])
########## Begin ##########
# 降维
# 主成分数量为 2
pca = PCA(n_components=2)
# 贡献比
X_Contribution = pca.fit_transform(x)
print(pca.explained_variance_ratio_)
# 生成降维后的数据
X_reduction = pca.transform(x)
print(X_reduction)
########## End ##########
代码说明:
- 导入必要的库:
numpy,matplotlib.pyplot,sklearn.decomposition - 定义一个包含 6 个点的二维数据集
x - 创建一个
PCA对象,指定主成分数量为 2 - 使用
fit_transform方法对数据进行降维并计算贡献比 - 打印贡献比
pca.explained_variance_ratio_ - 使用
transform方法对数据进行降维 - 打印降维后的数据
X_reduction
注意:
- 贡献比表示每个主成分解释的数据方差比例。
- 降维后的数据维度为 2,因为我们指定了
n_components=2。
示例结果:
[0.99244289 0.00755711]
[[ 1.48732684 0.32525664]
[ 1.04973692 0.13952589]
[ 5.20942194 1.04474473]
[ 7.95626726 1.03880806]
[ 0.60007258 -0.22856649]
[ 9.67718546 0.76923425]]
结论:
该示例演示了如何使用 Python 的 PCA 方法对数据进行降维。你可以根据实际情况调整主成分数量和数据集,并进行相应的分析。
原文地址: https://www.cveoy.top/t/topic/onQm 著作权归作者所有。请勿转载和采集!