【问题标题】:Extracting model reliability from multiple GAMs applied across a dataframe从跨数据帧应用的多个 GAM 中提取模型可靠性
【发布时间】:2015-07-06 11:35:13
【问题描述】:

我已经能够在数据帧中迭代地应用通用加法模型,所以其中 sp_a 是响应变量...

sp_a  <- rnorm (100, mean = 3, sd = 0.9)
var_env_1 <- rnorm (100, mean = 1, sd = 0.3)
var_env_2 <- rnorm (100, mean = 5, sd = 1.6)
var_env_3 <- rnorm (100, mean = 10, sd = 1.2)
data <- data.frame (sp_a, var_env_1, var_env_2,var_env_3)
library(mgcv)
Gam <- lapply(data[,-1], function(x) summary(gam(data$sp_a ~ s(x))))

这会在响应变量和每个解释变量之间迭代地创建一个 GAM。但是,我将如何从每个模型中提取 p 值或 s.pv。有人知道怎么做这个吗?另外,像这样按照他们的 AIC 分数对他们进行排名会很棒...

Gam1 <- gam(sp_a ~ s(var_env_1))
Gam2 <- gam(sp_a ~ s(var_env_2))
Gam3 <- gam(sp_a ~ s(var_env_3))
AIC(Gam1,Gam2,Gam3)

但是从原始的“Gam”输出中选择它。感谢您提前提供任何帮助。

【问题讨论】:

    标签: r gam mgcv


    【解决方案1】:

    最后,很明显我必须删除汇总选项,然后才能计算所有模型的 AIC 分数。其他有趣的格式化方式可以在这里找到Using lapply on a list of models,因为这些函数适用于不同类型的模型(例如 lm、glm)。

    Gam <- lapply(data[,-1], function(x) gam(data$sp_a ~ s(x)))
    sapply(X = Gam, FUN = AIC)
    

    【讨论】:

      猜你喜欢
      • 2021-03-22
      • 1970-01-01
      • 2017-07-11
      • 1970-01-01
      • 1970-01-01
      • 2022-08-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多