使用 PCA 将数据降维到一维

Reducing data to one dimension using PCA

能否将数据降维到只有一个主成分?

我在鸢尾花数据集上试了一下-

from sklearn.decomposition import PCA
import pandas as pd
import matplotlib.pyplot as plt

pca = PCA(n_components=1)
pca_X = pca.fit_transform(X)   #X = standardized iris data

pca_df = pd.DataFrame(pca_X, columns=["PCA1"])

plt.plot(pca_df["PCA1"], "o")

我们可以看到三个不同的集群。那么是否可以将维度降为1?

是的,维度可以减少到 1,这正是您在示例中所做的。

图中的 y 轴显示第一个主成分的每个观察值的坐标。

三个 簇可能与 Iris 数据集中的三个物种有关,与成分数量无关。

您可以选择使用 PCA 将维度减少到 1,它唯一承诺的是生成的主成分在数据中方差最高的方向。

如果您正在减少维度以改进分类,您可以使用线性判别分析,它为您提供 类.

之间的最大分离方向