使用 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,它唯一承诺的是生成的主成分在数据中方差最高的方向。
如果您正在减少维度以改进分类,您可以使用线性判别分析,它为您提供 类.
之间的最大分离方向
能否将数据降维到只有一个主成分?
我在鸢尾花数据集上试了一下-
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,它唯一承诺的是生成的主成分在数据中方差最高的方向。
如果您正在减少维度以改进分类,您可以使用线性判别分析,它为您提供 类.
之间的最大分离方向