3

nlme の gls を使用して、このモデルに適合させました。

require(nlme)

set.seed(101)
mp <-data.frame(year=1990:2010)
N <- nrow(mp)

mp <- within(mp,
     {
         wav <- rnorm(N)*cos(2*pi*year)+rnorm(N)*sin(2*pi*year)+5
         wow <- rnorm(N)*wav+rnorm(N)*wav^3
     })

m01 <- gls(wow~poly(wav,3), data=mp, correlation = corARMA(p=1))

疑似 R-squared のような適合度の尺度を計算したいのですが、どれが推奨されますか? そしてそれをどのように計算するのですか?

ありがとう

4

4 に答える 4

3

比較のために、ある種のベースラインが必要です。

> summary(m01)
Generalized least squares fit by REML
  Model: wow ~ poly(wav, 3) 
  Data: mp 
       AIC      BIC    logLik
  226.5434 231.5427 -107.2717

 m01 <- gls(wow~1, data=mp, correlation = corARMA(p=1))
> summary(m01)
Generalized least squares fit by REML
  Model: wow ~ 1 
  Data: mp 
       AIC     BIC    logLik
  256.5048 259.492 -125.2524

非線形適合の問題は、平均値がもはや「ベースライン」ではないことであり、それが R 2 乗測定で想定されていることです。

于 2013-01-22T04:09:07.800 に答える
3

ここにいくつかの疑似R二乗があります

R2 <- cor(mp$wow,predict(m01))^2

R2

R2.1 <- 1 - with(mp, (sum((wow-predict(m01))^2)/sum((wow-mean(wow))^2)))

R2.1

McFadden疑似R2

m00 <- gls(wow~1, data=mp, correlation = corARMA(p=1))

R2.n <- 1-(as.numeric(logLik(m01)/logLik(m00)))

R2.n

しかし、この種のモデルへの適合性の良さを評価するのにどちらが優れているかはわかりません。

于 2013-01-22T20:57:57.420 に答える
2

rcompanion::nagelkerke ()3 つの異なる疑似 R² 値を計算します。この関数は、 を介して適合されたモデルを受け入れますnlme::gls

于 2019-11-12T13:36:40.727 に答える
0

summary(m01)私があなたの質問を正しく理解していると仮定して、あなたが探しているものをあなたに与えるべきですか???fitさらなる提案を提供します。

于 2013-01-22T03:45:42.913 に答える