问题描述:

I am using the `twang`

package to create propensity scores, which are used as weights in a binomial glm using `survey::svyglm`

. The code looks something like this:

`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)

This produces the following warning:

`Warning message:`

In eval(expr, envir, enclos) : non-integer #successes in a binomial glm!

Does anyone know what I could be doing wrong ?

I wasn't sure if this message would be better on stats.SE, but on balance I thought I would try here first.

There's nothing wrong, `glm`

is just picky when it comes to specifying binomial (and Poisson) models. It warns if it detects that the no. of trials or successes is non-integral, but it goes ahead and fits the model anyway. If you want to suppress the warning (and you're sure it's not a problem), use `family=quasibinomial`

instead.

There is nothing wrong, *computationally*, but *statistically* you may not be doing something that makes much sense. In such a case, it is probably better to use a robust regression method, which is generally a good idea for proportional response data if your data include units with exactly 1 or exactly 0.