0

一般加法モデルをデータフレーム全体に繰り返し適用することができたので、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」出力からこれを選択します。事前に助けてくれてありがとう。

4

1 に答える 1

0

最終的に、サマリー オプションを削除する必要があることは明らかでした。これにより、すべてのモデルの AIC スコアを計算できるようになりました。これらの関数はさまざまな種類のモデル (例: lm、glm) で機能するため、これらの関数はさまざまな種類のモデル (例: lm、glm) で機能するため、これらの関数 はモデルのリストでの lapply の使用でここで見つけることができます。

Gam <- lapply(data[,-1], function(x) gam(data$sp_a ~ s(x)))
sapply(X = Gam, FUN = AIC)
于 2015-07-07T10:08:08.393 に答える