J'utilise le paquetage twang
pour créer des scores de propension, qui sont utilisés comme pondérations dans un modèle binomial à l'aide de survey::svyglm
. Le code ressemble à ceci:
pscore <- ps(ppci ~ var1+var2+.........., data=dt....)
dt$w <- get.weights(pscore, stop.method="es.mean")
design.ps <- svydesign(ids=~1, weights=~w, data=dt,)
glm1 <- svyglm(m30 ~ ppci, design=design.ps,family=binomial)
Cela produit l'avertissement suivant:
Warning message:
In eval(expr, envir, enclos) : non-integer #successes in a binomial glm!
Est-ce que quelqu'un sait ce que je pourrais faire mal?
Je ne savais pas si ce message serait meilleur sur stats.SE, mais tout compte fait, je pensais que j'essaierais ici en premier.
Il n'y a rien de mal, glm
est juste pointilleux pour spécifier des modèles binomiaux (et de Poisson). Il avertit s'il détecte que le non. des essais ou des réussites est non-intégrale, mais elle va de l'avant et correspond au modèle de toute façon. Si vous souhaitez supprimer l'avertissement (et que vous êtes sûr que ce n'est pas un problème), utilisez plutôt family=quasibinomial
.
Il n'y a rien de mal, de calcul , mais de manière statistique vous ne faites peut-être pas quelque chose de très logique. Dans un tel cas, il est probablement préférable d'utiliser une méthode de régression robuste, ce qui est généralement une bonne idée pour les données de réponse proportionnelle si vos données incluent des unités avec exactement 1 ou exactement 0.
Désolé, mais il est plus robuste en ce sens que si le mécanisme sous-jacent est un modèle binomial surdispersé, le binôme surdispersé le prendra en compte lors de l'estimation du erorr standard. Par conséquent, vous obtiendrez une meilleure couverture, même si les estimations ponctuelles sont les mêmes.