【问题标题】:PCA in R using the caret package vs prcomp PCAR中的PCA使用插入符号包与prcomp PCA
【发布时间】:2017-01-03 16:19:26
【问题描述】:

我有一个包含 50 多个变量的数据框 data,我正在尝试使用 caret 包在 R 中进行 PCA。

library(caret)
library(e1071)
trans <- preProcess(data,method=c("YeoJohnson", "center","scale", "pca"))

如果我正确理解了这段代码,它会应用 YeoJohnson 转换(因为 data 中有零),标准化 data,然后应用 PCA(默认情况下,该函数只保留在数据中至少 95% 的可变性)

但是,当我使用prcomp 命令时,

  model<-prcomp(data,scale=TRUE)

我可以获得更多输出,例如打印summary 或执行plot(data, type = "l"),这是我在trans 中无法做到的。有谁知道caret 包中是否有任何函数产生与prcomp 相同的输出?

【问题讨论】:

    标签: r pca r-caret


    【解决方案1】:

    您可以使用predict 函数访问主要组件本身。

    df <- predict(trans, data)
    summary(df)
    

    您不会得到与prcomp 完全相同的输出:虽然caret 使用prcomp(),但它会丢弃原始prcomp 类对象并且不返回它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多