Pseudo R ao quadrado da fórmula para GLMs


Respostas:


22

Há um grande número de pseudo- s para GLiMs. O excelente site de ajuda sobre estatísticas da UCLA tem uma visão abrangente sobre eles aqui . O que você lista é chamado pseudo- McFadden . Em relação à tipologia da UCLA, é como no sentido de indexar a melhoria do modelo ajustado em relação ao modelo nulo. Alguns softwares estatísticos, principalmente o SPSS, se bem me lembro, imprimem o pseudo- McFadden por padrão com os resultados de algumas análises como regressão logística, então suspeito que seja bastante comum, embora os pseudo- Cox & Snell e Nagelkerke s pode ser ainda mais. No entanto, o pseudo- McFadden não possui todas as propriedades deR 2 R 2 R 2 R 2 R 2 R 2 R 2 R 2 R 2 R 2 R 2R2R2R2R2R2R2R2 (nenhum pseudo- faz). Se alguém estiver interessado em usar um pseudo- para entender um modelo, eu recomendo fortemente a leitura deste excelente tópico do CV: Qual medida de pseudo- é a única a ser relatada para a regressão logística (Cox & Snell ou Nagelkerke)? (Por que vale a pena, em si é escorregadia que as pessoas imaginam, uma grande demonstração de que pode ser visto em @ de whuber resposta aqui: Is ? Útil ou perigoso ) R2R2R2R2R2


Gostaria de saber se todos esses pseudo-R2s foram projetados especificamente apenas para regressão logística? Ou eles generalizam também para poisson e gama-glms? Encontrei fórmula R2 diferente para cada GLM possível em:Colin Cameron, A., & Windmeijer, F. A. (1997). An R-squared measure of goodness of fit for some common nonlinear regression models. Journal of Econometrics, 77(2), 329-342.
Jens

@Jens, alguns deles certamente parecem específicos de LR, mas outros usam o desvio, que você pode obter de qualquer GLiM.
gung - Restabelece Monica

1
Observe que o McFadden é geralmente definido em termos de probabilidade logarítmica, que é definida apenas até uma constante aditiva, e não o desvio, como na pergunta do OP. Sem uma especificação da constante aditiva, o McFadden não está bem definido. O desvio é uma escolha única da constante aditiva, que em minha opinião é a escolha mais apropriada, se a generalização for comparável com de modelos lineares. R 2 R 2R2R2R2
NRH

Dado que os GLMs são adequados usando mínimos quadrados ponderados iterativamente, como em bwlewis.github.io/GLM , qual seria a objeção de fato de calcular um R2 ponderado na escala de links GLM, usando pesos de 1 / variância como pesos (que glm devolve nos pesos do slot em um ajuste glm)?
Tom Wenseleers

@ TomWenseleers, você pode fazer o que quiser, mas os argumentos básicos estão no segmento "Quais pseudo- ... relatar ...", vinculei, especialmente a resposta da probabilityislogic . R2
gung - Restabelecer Monica

9

R fornece desvio nulo e residual na saída para glmque você possa fazer exatamente esse tipo de comparação (consulte as duas últimas linhas abaixo).

> x = log(1:10)

> y = 1:10

> glm(y ~ x, family = poisson)

>Call:  glm(formula = y ~ x, family = poisson)

Coefficients:
(Intercept)            x  
  5.564e-13    1.000e+00  

Degrees of Freedom: 9 Total (i.e. Null);  8 Residual
Null Deviance:      16.64 
Residual Deviance: 2.887e-15    AIC: 37.97

Você também pode extrair esses valores do objeto com model$null.devianceemodel$deviance


Ah ok. Eu estava apenas respondendo a pergunta como estava escrita. Eu teria adicionado mais, mas não tenho 100% de certeza de como o desvio nulo é calculado (isso tem algo a ver com a probabilidade de log de um modelo saturado, mas não me lembro dos detalhes suficientes sobre a saturação para ter certeza. que eu poderia dar boas intuições)
David J. Harris

Eu não tenho isso na saída glm (possessão familiar ou quase-socorro).
Curioso

@ Tomas ver minhas edições. Não sei se me enganei há 2 anos ou se a saída padrão mudou desde então.
David J. Harris

summary.glmR2

1
Leia a pergunta. Você acha que responde? A questão não era "onde posso obter os componentes da fórmula?".
Curioso

6

A fórmula que você propôs foi proposta por Maddala (1983) e Magee (1990) para estimar R ao quadrado no modelo logístico. Portanto, não acho que seja aplicável a todo modelo glm (consulte o livro Métodos modernos de regressão de Thomas P. Ryan na página 266).

Se você criar um conjunto de dados falsos, verá que ele subestima o R ao quadrado ... para glm gaussiano, por exemplo.

Eu acho que para um glm gaussiano você pode usar a fórmula ao quadrado básica (lm) R ...

R2gauss<- function(y,model){
    moy<-mean(y)
    N<- length(y)
    p<-length(model$coefficients)-1
    SSres<- sum((y-predict(model))^2)
    SStot<-sum((y-moy)^2)
    R2<-1-(SSres/SStot)
    Rajust<-1-(((1-R2)*(N-1))/(N-p-1))
    return(data.frame(R2,Rajust,SSres,SStot))
}

And for the logistic (or binomial family in r ) I would use the formula you proposed...

    R2logit<- function(y,model){
    R2<- 1-(model$deviance/model$null.deviance)
    return(R2)
    }

Até agora, para poisson glm, usei a equação deste post.

https://stackoverflow.com/questions/23067475/how-do-i-obtain-pseudo-r2-measures-in-stata-when-using-glm-regression

Há também um ótimo artigo sobre o pseudo R2 disponível nos portões de pesquisas ... aqui está o link:

https://www.researchgate.net/publication/222802021_Pseudo_R-squared_measures_for_Poisson_regression_models_with_over-_or_underdispersion

Espero que isso ajude.


Apenas ajuste um modelo GLM com family = gaussian (link = identity) e verifique o valor de 1-summary(GLM)$deviance/summary(GLM)$null.deviancee você verá que o R2 corresponde ao valor R2 de uma regressão OLS regular, para que a resposta acima esteja correta! Veja também meu post aqui - stats.stackexchange.com/questions/412580/…
Tom Wenseleers

3

O pacote R modEvAcalcula D-Squared como 1 - (mod$deviance/mod$null.deviance)como mencionado por David J. Harris

set.seed(1)
data <- data.frame(y=rpois(n=10, lambda=exp(1 + 0.2 * x)), x=runif(n=10, min=0, max=1.5))

mod <- glm(y~x,data,family = poisson)

1- (mod$deviance/mod$null.deviance)
[1] 0.01133757
library(modEvA);modEvA::Dsquared(mod)
[1] 0.01133757

O desvio-D ao quadrado ou explicado do modelo é apresentado em (Guisan & Zimmermann 2000) https://doi.org/10.1016/S0304-3800(00)00354-9

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.