主成分分析 特征向量算主成分python
时间: 2023-11-01 11:59:28 浏览: 103
主成分分析_python_主成分分析_
5星 · 资源好评率100%
在 Python 中使用 NumPy 和 Pandas 库可以很方便地进行主成分分析和特征向量的计算。以下是一个简单的示例代码:
```python
import numpy as np
import pandas as pd
# 读取数据
data = pd.read_csv('data.csv')
# 计算协方差矩阵
covariance_matrix = np.cov(data.T)
# 计算特征向量和特征值
eigenvalues, eigenvectors = np.linalg.eig(covariance_matrix)
# 将特征向量按照对应的特征值从大到小排序
idx = eigenvalues.argsort()[::-1]
eigenvectors = eigenvectors[:, idx]
# 取前 k 个主成分
k = 2
principal_components = eigenvectors[:, :k]
# 将原始数据降维到 k 维
transformed_data = np.dot(data, principal_components)
```
其中,`data.csv` 是一个包含多个特征的数据集,每一行代表一个样本,每一列代表一个特征。上述代码首先计算协方差矩阵,然后使用 numpy.linalg.eig 函数计算协方差矩阵的特征值和特征向量。将特征向量按照对应的特征值从大到小排序后,可以选择前 k 个特征向量作为主成分,将原始数据投影到主成分上得到降维后的数据。
阅读全文