PCA缩放不适用于个人吗?

时间:2018-07-07 01:42:55

标签: r pca

此问题适用于我自己的数据,但是出于可重复性考虑,我的问题/问题也出现在FactoExtra插图或here中,因此为了简单起见,将使用它。 / p>

首先,生成一个简单的PCA(比例= T),并从前4个轴中提取坐标变量:

head(var$coord) # coordinates of variables
>                   Dim.1       Dim.2       Dim.3       Dim.4

> Sepal.Length  0.8901688 -0.36082989  0.27565767  0.03760602

> Sepal.Width  -0.4601427 -0.88271627 -0.09361987 -0.01777631

> Petal.Length  0.9915552 -0.02341519 -0.05444699 -0.11534978

> Petal.Width   0.9649790 -0.06399985 -0.24298265  0.07535950

对于“个人”也是如此。输出如下:

head(ind$coord) # coordinates of individuals
>       Dim.1      Dim.2       Dim.3        Dim.4

> 1 -2.257141 -0.4784238  0.12727962  0.024087508

> 2 -2.074013  0.6718827  0.23382552  0.102662845

> 3 -2.356335  0.3407664 -0.04405390  0.028282305

4 -2.291707  0.5953999 -0.09098530 -0.065735340

5 -2.381863 -0.6446757 -0.01568565 -0.035802870

6 -2.068701 -1.4842053 -0.02687825  0.006586116

由于PCA是使用scale=T生成的,所以我对为什么不按比例缩放单个坐标(-1到1?)感到非常困惑。例如,“个体1”的DIM-1得分为-2.257141,但是对于-0.46至0.991的变量坐标,我没有比较的基础。在PCA范围为-1到1的情况下,如何解释-2.25的分数?

我想念什么吗? 谢谢您的宝贵时间!

已更新,并填补了所有相关的代码空白:

> data(iris)

> res.pca <- prcomp(iris[, -5],  scale = TRUE)

> ind <- get_pca_ind(res.pca)

> print(ind)

>var <- get_pca_var(res.pca)

> print(var)

2 个答案:

答案 0 :(得分:1)

prcomp(...,scale=T)将输入变量缩放为单位方差时的缩放比例。

除非可以使用center = ...,否则我认为它对单个坐标的范围标准化没有任何帮助。但是,事后(或事前)会很容易。这是相关的帖子:

Range standardization (0 to 1) in R

答案 1 :(得分:1)

我问了FactoExtra的作者这个问题。这是他的答复:

  

Scale = TRUE将标准化变量以使其具有可比性。当以不同的比例尺(例如:公斤,千米,厘米等)测量变量时,尤其推荐使用此方法。(http://www.sthda.com/english/articles/31-principal-component-methods-in-r-practical-guide/112-pca-principal-component-analysis-essentials/)。

     

在这种情况下,变量和主成分(PC)之间的相关性用作变量在PC上的坐标。变量的表示形式与观测值的图不同:观测值由它们的投影表示,而变量由它们的相关性表示。

     

因此,即使scale = TRUE,个体的坐标也不希望在-1和1之间。

     

只能通过创建http://www.sthda.com/english/articles/31-principal-component-methods-in-r-practical-guide/112-pca-principal-component-analysis-essentials/中所述的双图来解释个体和变量的相对位置。

对我来说,双线图不是个好主意,但我尝试过重新缩放,并且可以使用。另外,我想我可以带一个人并将它们投影到PCA中,以查看它们的下落。

无论如何,到此为止。感谢您的帮助@ Hack-r!