PCA 解释方差分析
PCA Explained Variance Analysis
我是 PCA 的新手。
我的模型有 11 个 X 变量。这些是 X 变量标签
x = ['Day','Month', 'Year', 'Rolling Average','Holiday Effect', 'Day of the Week', 'Week of the Year', 'Weekend Effect', 'Last Day of the Month', "Quarter" ]
这是我根据解释方差生成的图表。以 x 轴为主成分。
[ 3.47567089e-01 1.72406623e-01 1.68663799e-01 8.86739892e-02
4.06427375e-02 2.75054035e-02 2.26578769e-02 5.72892368e-03
2.49272688e-03 6.37160140e-05]
我需要知道我是否有很好的功能选择。我怎么知道哪些功能贡献最大。
from sklearn import decomposition
pca = decomposition.PCA()
pca.fit(X_norm)
scores = pca.explained_variance_
虽然我不知道数据集,但我建议您在使用 PCA 之前缩放您的特征(方差将沿轴最大化)。我认为 X_norm 指的是您代码中的那个。
通过使用 PCA,我们的目标是降低维度。为了做到这一点,我们将从一个特征 space 开始,它包括您案例中的所有 X 变量,并最终投影 space 通常是一个不同的特征 (sub)space.
实际上,当特征之间存在相关性时,PCA 可以帮助您将相关性投射到更小的维度。
想一想,如果我的桌子上拿着一张满是点的纸,我是否需要第 3 维来表示该数据集?可能不是,因为所有的点都在纸上,可以用二维表示 space.
当您试图决定要从新特征中使用多少主成分时 space,您可以查看解释方差,它会告诉您每个主成分有多少信息。
当我查看您数据中的主成分时,我发现大约 85% 的方差可归因于前 6 个主成分。
您还可以设置n_components。例如,如果您使用 n_components=2,那么您转换后的数据集将具有 2 个特征。
我是 PCA 的新手。 我的模型有 11 个 X 变量。这些是 X 变量标签
x = ['Day','Month', 'Year', 'Rolling Average','Holiday Effect', 'Day of the Week', 'Week of the Year', 'Weekend Effect', 'Last Day of the Month', "Quarter" ]
这是我根据解释方差生成的图表。以 x 轴为主成分。
[ 3.47567089e-01 1.72406623e-01 1.68663799e-01 8.86739892e-02
4.06427375e-02 2.75054035e-02 2.26578769e-02 5.72892368e-03
2.49272688e-03 6.37160140e-05]
我需要知道我是否有很好的功能选择。我怎么知道哪些功能贡献最大。
from sklearn import decomposition
pca = decomposition.PCA()
pca.fit(X_norm)
scores = pca.explained_variance_
虽然我不知道数据集,但我建议您在使用 PCA 之前缩放您的特征(方差将沿轴最大化)。我认为 X_norm 指的是您代码中的那个。
通过使用 PCA,我们的目标是降低维度。为了做到这一点,我们将从一个特征 space 开始,它包括您案例中的所有 X 变量,并最终投影 space 通常是一个不同的特征 (sub)space.
实际上,当特征之间存在相关性时,PCA 可以帮助您将相关性投射到更小的维度。
想一想,如果我的桌子上拿着一张满是点的纸,我是否需要第 3 维来表示该数据集?可能不是,因为所有的点都在纸上,可以用二维表示 space.
当您试图决定要从新特征中使用多少主成分时 space,您可以查看解释方差,它会告诉您每个主成分有多少信息。
当我查看您数据中的主成分时,我发现大约 85% 的方差可归因于前 6 个主成分。
您还可以设置n_components。例如,如果您使用 n_components=2,那么您转换后的数据集将具有 2 个特征。