[R] Poisson regression in R
Peter Dalgaard
p.dalgaard at biostat.ku.dk
Sun Mar 2 09:27:45 CET 2008
glmstat wrote:
> I have these questions:
> (1) Use Poisson regression to estimate the main effects of car, age, and
> dist (each treated as categorical and modelled using indicator variables)
> and interaction terms.
> (2) It was determined by one study that all the interactions were
> unimportant and decided that age and car could be treated as though they
> were continuous variables. Fit a model incorporating these features and
> compare it with the best model obtained in (1).
>
>
This looks like homework, so only hints are offered.
You don't seem to be using n, consider incorporating an offset (I would
expect most texts on Poison regr. to discuss this).
> n is the number of insurance policies
> y is the number of claims
> car is the car in an insurance category
> age is the age of policy holder
> dist is the district where the policy holder lived (1 for London and other
> major cities, and 0 otherwise)
>
> Data:
>
> car age dist y n
> 1 1 0 65 317
> 1 2 0 65 476
> 1 3 0 52 486
> 1 4 0 310 3259
> 2 1 0 98 486
> 2 2 0 159 1004
> 2 3 0 175 1355
> 2 4 0 877 7660
> 3 1 0 41 223
> 3 2 0 117 539
> 3 3 0 137 697
> 3 4 0 477 3442
> 4 1 0 11 40
> 4 2 0 35 148
> 4 3 0 39 214
> 4 4 0 167 1019
> 1 1 1 2 20
> 1 2 1 5 33
> 1 3 1 4 40
> 1 4 1 36 316
> 2 1 1 7 31
> 2 2 1 10 81
> 2 3 1 22 122
> 2 4 1 102 724
> 3 1 1 5 18
> 3 2 1 7 39
> 3 3 1 16 68
> 3 4 1 63 344
> 4 1 1 0 3
> 4 2 1 6 16
> 4 3 1 8 25
> 4 4 1 33 114
>
>
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> I need help finding the correct R code to construct models. According to the
> previous study, the model in (2) "is simpler than (1), fits well (deviance =
> 53.11, d.f. = 60, p-value = 0.72) and gives coefficients (standard errors):
> AGE, – 0.177 (0.018); CAR, 0.198 (0.021); DIST, 0.210 (0.059)."
>
> As of the first model, I think that I should use this code, but not sure:
>
>
>> firstmodel<-glm(y~factor(age)*factor(car)*factor(dist),family=poisson)
>>
>
> As of the second model, I used this code, but it produces results that
> contradict what the previous study says (and deleting intercept does not
> help):
>
>
>> secondmodel<-glm(y~age+car+factor(dist),family=poisson)
>> summary(secondmodel)
>>
> Call:
> glm(formula = y ~ age + car + factor(dist), family = poisson)
>
> Deviance Residuals:
> Min 1Q Median 3Q Max
> -14.0258 -3.3200 -0.6296 2.0575 18.1442
>
> Coefficients:
> Estimate Std. Error z value Pr(>|z|)
> (Intercept) 3.08222 0.08127 37.92 <2e-16 ***
> age 0.83664 0.02067 40.48 <2e-16 ***
> car -0.16723 0.01612 -10.37 <2e-16 ***
> factor(dist)1 -2.15937 0.05849 -36.92 <2e-16 ***
> ---
> Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
>
> (Dispersion parameter for poisson family taken to be 1)
>
> Null deviance: 5660.6 on 31 degrees of freedom
> Residual deviance: 1154.5 on 28 degrees of freedom
> AIC: 1330.8
>
> Number of Fisher Scoring iterations: 5
>
--
O__ ---- Peter Dalgaard Øster Farimagsgade 5, Entr.B
c/ /'_ --- Dept. of Biostatistics PO Box 2099, 1014 Cph. K
(*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk) FAX: (+45) 35327907
More information about the R-help
mailing list