首页 > 解决方案 > 绘制 phytools-convert aa 类对象的 pca

问题描述

我用 phytools phyl.pca 运行 pca,它在“phyl.pca”类中,我想通过 factoextra(fviz_pca_biplot)或 ggbiplot(或任何好的包)来可视化结果,但它们只有 pca 的“prcomp”类除外。有没有办法凝聚或转换我的对象,以便他适合?

这是错误

  An object of class : phyl.pca can't be handled by factoextra

想要的对象...

> str(pca.no.correct)
List of 5
 $ sdev    : num [1:15] 2.39 1.71 1.48 1.13 1.01 ...
 $ rotation: num [1:15, 1:15] 0.175 0.256 0.321 0.126 0.393 ...
  ..- attr(*, "dimnames")=List of 2
  .. ..$ : chr [1:15] "Colony.initiation" "Colony.size.maximum" "Colony.size.avarage" "Colony.longevity" ...
  .. ..$ : chr [1:15] "PC1" "PC2" "PC3" "PC4" ...
 $ center  : Named num [1:15] 790.5 32861 5708.79 5.02 3.1 ...
  ..- attr(*, "names")= chr [1:15] "Colony.initiation" "Colony.size.maximum" "Colony.size.avarage" "Colony.longevity" ...
 $ scale   : Named num [1:15] 1700.26 76288.21 9818.21 5.06 2.65 ...
  ..- attr(*, "names")= chr [1:15] "Colony.initiation" "Colony.size.maximum" "Colony.size.avarage" "Colony.longevity" ...
 $ x       : num [1:16, 1:15] 3.08 2.19 3.78 3.4 -1.98 ...
  ..- attr(*, "dimnames")=List of 2
  .. ..$ : chr [1:16] "Apis_mellifera" "Apis_cerana" "Apis_dorsata" "Apis_florea" ...
  .. ..$ : chr [1:15] "PC1" "PC2" "PC3" "PC4" ...
 - attr(*, "class")= chr "prcomp"
...

和我的对象

...
List of 7
 $ Eval: num [1:15, 1:15] 1.3e+11 0.0 0.0 0.0 0.0 ...
  ..- attr(*, "dimnames")=List of 2
  .. ..$ : chr [1:15] "PC1" "PC2" "PC3" "PC4" ...
  .. ..$ : chr [1:15] "PC1" "PC2" "PC3" "PC4" ...
 $ Evec: num [1:15, 1:15] 3.37e-03 9.95e-01 1.86e-02 -8.88e-06 9.62e-06 ...
  ..- attr(*, "dimnames")=List of 2
  .. ..$ : chr [1:15] "Colony.initiation" "Colony.size.maximum" "Colony.size.avarage" "Colony.longevity" ...
  .. ..$ : chr [1:15] "PC1" "PC2" "PC3" "PC4" ...
 $ S   : num [1:16, 1:15] 97241 55369 107212 316223 -1368 ...
  ..- attr(*, "dimnames")=List of 2
  .. ..$ : chr [1:16] "Apis_mellifera" "Apis_cerana" "Apis_dorsata" "Apis_florea" ...
  .. ..$ : chr [1:15] "PC1" "PC2" "PC3" "PC4" ...
 $ L   : num [1:15, 1:15] 0.0554 0.9976 0.126 -0.0759 0.4936 ...
  ..- attr(*, "dimnames")=List of 2
  .. ..$ : chr [1:15] "Colony.initiation" "Colony.size.maximum" "Colony.size.avarage" "Colony.longevity" ...
  .. ..$ : chr [1:15] "PC1" "PC2" "PC3" "PC4" ...
 $ V   : num [1:15, 1:15] 481447985 210777779 797578573 -142148 -70314 ...
  ..- attr(*, "dimnames")=List of 2
  .. ..$ : chr [1:15] "Colony.initiation" "Colony.size.maximum" "Colony.size.avarage" "Colony.longevity" ...
  .. ..$ : chr [1:15] "Colony.initiation" "Colony.size.maximum" "Colony.size.avarage" "Colony.longevity" ...
 $ a   : num [1, 1:15] 23.205 1564.695 224.785 0.473 0.542 ...
 $ mode: chr "cov"
 - attr(*, "class")= chr "phyl.pca"
...

标签: classtype-conversionpca

解决方案


推荐阅读