在SciPy中进行主成分分析可以使用scipy.linalg.eig函数。以下是一个简单的示例代码:
import numpy as npfrom scipy.linalg import eig# 创建一个随机的数据集data = np.random.rand(10, 5)# 计算数据集的协方差矩阵cov_mat = np.cov(data, rowvar=False)# 计算特征值和特征向量eig_vals, eig_vecs = eig(cov_mat)# 输出前两个主成分print("Principal Component 1:")print(eig_vecs[:, 0])print("Principal Component 2:")print(eig_vecs[:, 1])在这个示例中,我们首先生成一个随机的数据集,然后计算数据集的协方差矩阵。接下来,使用scipy.linalg.eig函数计算协方差矩阵的特征值和特征向量,然后输出前两个主成分(特征向量)。


