Comment se calcule une régression logistique ?

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Pierre Bady
Messages : 405
Enregistré le : 02 Mai 2006, 07:46

Re: Comment se calcule une régression logistique ?

Messagepar Pierre Bady » 07 Juil 2016, 10:45

resalut,

dsl ... de mon coté, il n'y a pas vraiment de soucis ...

Code : Tout sélectionner

tab <- structure(list(Hours = c(0.5, 0.75, 1, 1.25, 1.5, 1.75, 1.75,2, 2.25, 2.5, 2.75, 3, 3.25, 3.5, 4, 4.25, 4.5, 4.75, 5, 5.5),
                 Pass = c(0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1,1, 1, 1, 1)), .Names = c("Hours", "Pass"),
                 row.names = c("V2","V3", "V4", "V5", "V6", "V7", "V8", "V9", "V10", "V11", "V12",
                 "V13", "V14", "V15", "V16", "V17", "V18", "V19", "V20", "V21"
                 ), class = "data.frame")

### à la main (régression pondérée)
# facile d'ajouter seuil de tolerance et contraintes sur les itérations
x <- tab$Hours
y <- tab$Pass
n <- length(y)
# proportions
f <- y
# link-transformation
g <- log(f/(1-f))
# weighting
w <- n*f*(1-f)
# weighted regression
r <- predict(lm(g~x,weights=w))
p <- exp(r)/(1+exp(r))
plot(x,f,ylim=c(0,1))
lines(x,p,col="green")
cols1 <- rainbow(5)
for(i in 1:5){
  w <- p*(1-p)
  gu <- r+(f-p)/p/(1-p)
  lmr <- lm(gu~x,weights=w)
  r <- predict(lmr)
  p <- exp(r)/(1+exp(r))
  lines(x,p,col=cols1[i])
  print(coef(lmr))
}
### comparasion des résultats avec un GLM
glm1 <- glm(f~x, family=binomial(link="logit"))
lines(x,predict(glm1,type="response"),col="red",lty=2,lwd=2)
coefficients(lm(gu~x,weights=w))
coefficients(glm1)


je pense qu'on doit pas regarder la même chose ? ou alors, j'ai merdé à un moment dans le script?


@++ et bonne journée,


pierre
=@===--------¬-------¬------¬-----¬
liens utiles :
http://www.gnurou.org/Writing/SmartQuestionsFr
http://neogrifter.free.fr/welcomeOnInternet.jpg
]<((((*< -------------------------------


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Google [Bot] et 1 invité