kalıntılara dayanan testler

Aug 26 2020

Bu, burada izin verilmeyen bir soru olabilir, ancak sorun olmazsa deneyeceğimi düşündüm. Anladığım kadarıyla artıklara dayanan bir dizi test var. Bunun bir örneği Breusch-Pagan testidir. Bu, bundan açık sonuçlar üretir (ve dokümantasyon artıklardan ziyade bir regresyon modeli gerektiriyor gibi görünmektedir).

# load the dataset
data(mtcars)
# fit a regression model
model <- lm(mpg~disp+hp, data=mtcars)
library(lmtest)
# perform Breusch-Pagan Test
bptest(model)

Kod kalıntıları çıkarıyor mu yoksa bu test için kalıntılara ihtiyacınız olduğunu varsayarken yanılıyor muyum (okuduğum yorumlar kalıntılar üzerinde oldukça açık görünüyor).

Yanıtlar

StupidWolf Aug 26 2020 at 00:27

@ ChristophHanck'ın yorumuna eklemek için, bptest için kaynak kodunu kontrol edebilirsiniz ve içinde bir formül ve bir veri çerçevesinin uygulanabileceğini görebilirsiniz:

bptest(mpg~disp+hp, data=mtcars)

studentized Breusch-Pagan test

data:  mpg ~ disp + hp
BP = 4.0861, df = 2, p-value = 0.1296

Kodun altında iki bölüm var. Bir lm nesnesi sağlarsanız, x ve y'yi çıkaracak, formülü lm.fit kullanarak yeniden yerleştirecektir. Daha sonra lm.fit nesnesinden kalıntıları çıkarır ve ilgili istatistikleri hesaplar. Bunlar ilgili satırlardır:

resi <- lm.fit(X,y)$residuals
  sigma2 <- sum(resi^2)/n

  if(studentize)
  {
    w <- resi^2 - sigma2
    aux <- lm.fit(Z, w)    
    bp <- n * sum(aux$fitted.values^2)/sum(w^2) method <- "studentized Breusch-Pagan test" } else { f <- resi^2/sigma2 -1 aux <- lm.fit(Z, f) bp <- 0.5 * sum(aux$fitted.values^2)
    method <- "Breusch-Pagan test"
  }

  names(bp) <- "BP"
  df <- c("df" = aux$rank - 1)
  RVAL <- list(statistic = bp,
      parameter = df,
      method = method,
      p.value= pchisq(bp, df, lower.tail = FALSE),
      data.name = dname)