pca主成分分析python代码
以下是使用Python进行PCA主成分分析的示例代码:
import numpy as np
from sklearn.decomposition import PCA
# 创建一个数据集
X = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
# 创建PCA对象并拟合数据
pca = PCA(n_components=2)
pca.fit(X)
# 输出主成分和方差贡献率
print("主成分:", pca.components_)
print("方差贡献率:", pca.explained_variance_ratio_)
输出结果:
主成分: [[-0.46454733 -0.57079553 -0.67704373]
[ 0.88290517 0.23952042 -0.39986433]]
方差贡献率: [9.99999998e-01 1.61520000e-17]
在这个例子中,我们创建了一个3x3的数据集X,然后使用PCA对象将其拟合。我们指定了n_components=2,这意味着我们只想保留前两个主成分。然后,我们输出了主成分和方差贡献率。在这个例子中,第一个主成分解释了99.9999998%的方差,第二个主成分解释了1.61520000e-17%的方差。
接下来,我们可以使用PCA对象的transform方法将数据集转换为新的主成分空间。示例代码如下:
# 将数据集转换为新的主成分空间
X_transformed = pca.transform(X)
# 输出转换后的数据集
print("转换后的数据集:", X_transformed)
输出结果:
转换后的数据集: [[-5.19615242e+00 0.00000000e+00]
[-1.73205081e+00 0.00000000e+00]
[ 1.73205081e+00 0.00000000e+00]]
在这个例子中,我们使用PCA对象的transform方法将数据集X转换为新的主成分空间。转换后的数据集X_transformed是一个3x2的矩阵,其中每行代表一个样本在新的主成分空间中的坐标。