Example C6 Bivariate count response model

 

Cameron and Trivedi (1988) use various forms of overdispersed Poisson model to study the relationship between type of health insurance and various responses which measure the demand for health care, e.g. number of consultations with a doctor or specialist. The data set they use in this analysis is from the Australian Health survey for 1977-1978. In a later work Cameron and Trivedi (1998) estimate a bivariate Poisson model. for two of the measures for the demand for health care. We use a version of the Cameron and Trivedi (1988) data set (called visit-prescribe.dat) for the bivariate model. The data for the bivariate model (visit-prescribe.dat) are a stacked version of Cameron and Trivedi data set. A copy of the original data set (racd.dat) and further details about the variables in racd.dat can be obtained from http://cameron.econ.ucdavis.edu/racd/racddata.html.

 

References

 

Cameron, A.C., Trivedi, P.K., Milne, F., Piggott, J., (1988) A microeconometric model of the demand for Health Care and Health Insurance in Australia, Review of Economic Studies, 55, 85-106.

 

Cameron, A.C., Trivedi, P.K (1998), Regression Analysis of Count Data, Econometric Society Monograph No.30, Cambridge University Press,

 

 

Data description

 

Number of observations (rows): 10380

Number of variables (columns): 26

 

Variables:

ij = respondent identifier

r = if this is the 1st measure of the demand for health care, 2 for the second.

sex= 1 if respondent is female, 0 if male

age = respondentís age in years divided by 100,

agesq = age squared

income =respondentís annual income in Australian dollars divided by 1000

levyplus =1 if respondent is covered by private health insurance fund for private patient in public hospital (with doctor of choice), 0 otherwise

freepoor =1 if respondent is covered by government because low income, recent immigrant, unemployed, 0 otherwise

freerepa=1 if respondent is covered free by government because of old-age or disability pension, or because invalid veteran or family of deceased veteran, 0 otherwise

illness = number of illnesses in past 2 weeks with 5 or more coded as 5

actdays = number of days of reduced activity in past two weeks due to illness or injury

hscore = respondentís general health questionnaire score using Goldberg's method, high score indicates bad health.

chcond1 = 1 if respondent has chronic condition(s) but not limited in activity, 0 otherwise

chcond2 = 1 if respondent has chronic condition(s) and limited in activity, 0 otherwise

dvisits = number of consultations with a doctor or specialist in the past 2 weeks

nondocco = number of consultations with non-doctor health professionals, (chemist, optician, physiotherapist, social worker, district community nurse, chiropodist or chiropractor in the past 2 weeks

hospadmi = number of admissions to a hospital, psychiatric hospital, nursing or convalescent home in the past 12 months (up to 5 or more admissions which is coded as 5)

hospdays = number of nights in a hospital, etc. during most recent admission, in past 12 months

medicine = total number of prescribed and nonprescribed medications used in past 2 days

prescribe = total number of prescribed medications used in past 2 days

nonprescribe = total number of nonprescribed medications used in past 2 days

constant = 1 for all observations

id= ij

y = when r1=1, y is dvisits and when r2=1, y is prescribe

r1 = 1 if r=1, 0 otherwise

r2 = 1 if r=2, 0 otherwise

 

The first few lines of the stacked data (visit-prescribe.dat) look like:

 

 

 

 

Sabre commands

 

out visit-prescribe.log

trace visit-prescribe.trace

data ij r sex age agesq income levyplus freepoor freerepa illness actdays &

†††† hscore chcond1 chcond2 dvisits nondocco hospadmi hospdays medicine &

†††† prescrib nonpresc constant id y r1 r2

read visit-prescribe.dat

case id

yvar y

model b

rvar r

family first=p second=p

constant first=r1 second=r2

trans r1_sex r1 * sex

trans r1_age r1 * age

trans r1_agesq r1 * agesq

trans r1_income r1 * income

trans r1_levyplus r1 * levyplus

trans r1_freepoor r1 * freepoor

trans r1_freerepa r1 * freerepa

trans r1_illness r1 * illness

trans r1_actdays r1 * actdays

trans r1_hscore r1 * hscore

trans r1_chcond1 r1 * chcond1

trans r1_chcond2 r1 * chcond2

trans r2_sex r2 * sex

trans r2_age r2 * age

trans r2_agesq r2 * agesq

trans r2_income r2 * income

trans r2_levyplus r2 * levyplus

trans r2_freepoor r2 * freepoor

trans r2_freerepa r2 * freerepa

trans r2_illness r2 * illness

trans r2_actdays r2 * actdays

trans r2_hscore r2 * hscore

trans r2_chcond1 r2 * chcond1

trans r2_chcond2 r2 * chcond2

nvar 13

lfit r1_sex r1_age r1_agesq r1_income r1_levyplus r1_freepoor r1_freerepa &

†††† r1_illness r1_actdays r1_hscore r1_chcond1 r1_chcond2 r1 &

†††† r2_sex r2_age r2_agesq r2_income r2_levyplus r2_freepoor r2_freerepa &

†††† r2_illness r2_actdays r2_hscore r2_chcond1 r2_chcond2 r2

dis m

dis e

fit r1_sex r1_age r1_agesq r1_income r1_levyplus r1_freepoor r1_freerepa &

††† r1_illness r1_actdays r1_hscore r1_chcond1 r1_chcond2 r1 &

†† r2_sex r2_age r2_agesq r2_income r2_levyplus r2_freepoor r2_freerepa &

††† r2_illness r2_actdays r2_hscore r2_chcond1 r2_chcond2 r2

dis m

dis e

stop

 

 

 

Sabre log file

<S> trace visit-prescribe.trace
<S> data ij r sex age agesq income levyplus freepoor freerepa illness actdays &
<S>      hscore chcond1 chcond2 dvisits nondocco hospadmi hospdays medicine &
<S>      prescrib nonpresc constant id y r1 r2
<S> read visit-prescribe.dat

      10380 observations in dataset

<S> case id
<S> yvar y
<S> model b
<S> rvar r
<S> family first=p second=p
<S> constant first=r1 second=r2
<S> trans r1_sex r1 * sex
<S> trans r1_age r1 * age
<S> trans r1_agesq r1 * agesq
<S> trans r1_income r1 * income
<S> trans r1_levyplus r1 * levyplus
<S> trans r1_freepoor r1 * freepoor
<S> trans r1_freerepa r1 * freerepa
<S> trans r1_illness r1 * illness
<S> trans r1_actdays r1 * actdays
<S> trans r1_hscore r1 * hscore
<S> trans r1_chcond1 r1 * chcond1
<S> trans r1_chcond2 r1 * chcond2
<S> trans r2_sex r2 * sex
<S> trans r2_age r2 * age
<S> trans r2_agesq r2 * agesq
<S> trans r2_income r2 * income
<S> trans r2_levyplus r2 * levyplus
<S> trans r2_freepoor r2 * freepoor
<S> trans r2_freerepa r2 * freerepa
<S> trans r2_illness r2 * illness
<S> trans r2_actdays r2 * actdays
<S> trans r2_hscore r2 * hscore
<S> trans r2_chcond1 r2 * chcond1
<S> trans r2_chcond2 r2 * chcond2
<S> nvar 13
<S> lfit r1_sex r1_age r1_agesq r1_income r1_levyplus r1_freepoor r1_freerepa &
<S>      r1_illness r1_actdays r1_hscore r1_chcond1 r1_chcond2 r1 &
<S>      r2_sex r2_age r2_agesq r2_income r2_levyplus r2_freepoor r2_freerepa &
<S>      r2_illness r2_actdays r2_hscore r2_chcond1 r2_chcond2 r2

    Iteration       Log. lik.       Difference
    __________________________________________
        1          -15324.252
        2          -10132.089        5192.
        3          -9024.2545        1108.
        4          -8891.0379        133.2
        5          -8886.3277        4.710
        6          -8886.3083       0.1945E-01
        7          -8886.3083       0.1989E-05

<S> dis m

    X-vars            Y-var
    ______________________________
    r1                y
    r1_sex
    r1_age
    r1_agesq
    r1_income
    r1_levyplus
    r1_freepoor
    r1_freerepa
    r1_illness
    r1_actdays
    r1_hscore
    r1_chcond1
    r1_chcond2
    r2
    r2_sex
    r2_age
    r2_agesq
    r2_income
    r2_levyplus
    r2_freepoor
    r2_freerepa
    r2_illness
    r2_actdays
    r2_hscore
    r2_chcond1
    r2_chcond2

    Correlated bivariate model

    Standard Poisson/Poisson

    Number of observations             =   10380

    X-var df           =    26

    Log likelihood =     -8886.3083     on   10354 residual degrees of freedom

<S> dis e

    Parameter              Estimate         Std. Err.
    ___________________________________________________
    r1                     -2.2238          0.18982
    r1_sex                 0.15688          0.56137E-01
    r1_age                  1.0563           1.0008
    r1_agesq              -0.84870           1.0778
    r1_income             -0.20532          0.88379E-01
    r1_levyplus            0.12319          0.71640E-01
    r1_freepoor           -0.44006          0.17981
    r1_freerepa            0.79798E-01      0.92060E-01
    r1_illness             0.18695          0.18281E-01
    r1_actdays             0.12685          0.50340E-02
    r1_hscore              0.30081E-01      0.10099E-01
    r1_chcond1             0.11409          0.66640E-01
    r1_chcond2             0.14116          0.83145E-01
    r2                     -2.7412          0.12921
    r2_sex                 0.48377          0.36639E-01
    r2_age                  2.6497          0.61491
    r2_agesq              -0.88778          0.64292
    r2_income             -0.44661E-02      0.55766E-01
    r2_levyplus            0.28274          0.52278E-01
    r2_freepoor           -0.45680E-01      0.12414
    r2_freerepa            0.29584          0.59667E-01
    r2_illness             0.20112          0.10530E-01
    r2_actdays             0.29261E-01      0.36746E-02
    r2_hscore              0.20103E-01      0.63664E-02
    r2_chcond1             0.77565          0.46130E-01
    r2_chcond2              1.0107          0.53895E-01

<S> fit r1_sex r1_age r1_agesq r1_income r1_levyplus r1_freepoor r1_freerepa &
<S>     r1_illness r1_actdays r1_hscore r1_chcond1 r1_chcond2 r1 &
<S>     r2_sex r2_age r2_agesq r2_income r2_levyplus r2_freepoor r2_freerepa &
<S>     r2_illness r2_actdays r2_hscore r2_chcond1 r2_chcond2 r2

    Initial Homogeneous Fit:

    Iteration       Log. lik.       Difference
    __________________________________________
        1          -15324.252
        2          -10132.089        5192.
        3          -9024.2545        1108.
        4          -8891.0379        133.2
        5          -8886.3277        4.710
        6          -8886.3083       0.1945E-01
        7          -8886.3083       0.1989E-05


    Iteration       Log. lik.         Step      End-points     Orthogonality
                                     length    0          1      criterion
    ________________________________________________________________________
        1          -8732.7442        1.0000    fixed  fixed       72.910
        2          -8650.4889        1.0000    fixed  fixed       68.194
        3          -8634.0864        1.0000    fixed  fixed      0.60170
        4          -8592.1028        0.0312    fixed  fixed       188.30
        5          -8562.0288        1.0000    fixed  fixed       51.688
        6          -8554.9622        1.0000    fixed  fixed       126.87
        7          -8551.2538        1.0000    fixed  fixed       18.966
        8          -8551.2208        1.0000    fixed  fixed       3.8237
        9          -8551.2208        1.0000    fixed  fixed

<S> dis m

    X-vars            Y-var             Case-var
    ________________________________________________
    r1                y                 id
    r1_sex
    r1_age
    r1_agesq
    r1_income
    r1_levyplus
    r1_freepoor
    r1_freerepa
    r1_illness
    r1_actdays
    r1_hscore
    r1_chcond1
    r1_chcond2
    r2
    r2_sex
    r2_age
    r2_agesq
    r2_income
    r2_levyplus
    r2_freepoor
    r2_freerepa
    r2_illness
    r2_actdays
    r2_hscore
    r2_chcond1
    r2_chcond2

    Correlated bivariate model

    Standard Poisson/Poisson
    Gaussian random effects

    Number of observations             =   10380
    Number of cases                    =    5190

    X-var df           =    26
    Scale df           =     3

    Log likelihood =     -8551.2208     on   10351 residual degrees of freedom

<S> dis e

    Parameter              Estimate         Std. Err.
    ___________________________________________________
    r1                     -2.6694          0.24673
    r1_sex                 0.27506          0.73571E-01
    r1_age                -0.96132           1.3337
    r1_agesq                1.4568           1.4522
    r1_income             -0.11897          0.11257
    r1_levyplus            0.15202          0.89966E-01
    r1_freepoor           -0.62151          0.23768
    r1_freerepa            0.17419          0.12109
    r1_illness             0.22347          0.25097E-01
    r1_actdays             0.13872          0.81816E-02
    r1_hscore              0.39132E-01      0.14129E-01
    r1_chcond1             0.15663          0.83179E-01
    r1_chcond2             0.26404          0.10820
    r2                     -2.9069          0.15064
    r2_sex                 0.57019          0.43558E-01
    r2_age                  2.0381          0.74431
    r2_agesq              -0.19637          0.79300
    r2_income              0.32556E-01      0.65766E-01
    r2_levyplus            0.27330          0.58470E-01
    r2_freepoor           -0.91061E-01      0.13849
    r2_freerepa            0.29736          0.69972E-01
    r2_illness             0.21674          0.13479E-01
    r2_actdays             0.40222E-01      0.50644E-02
    r2_hscore              0.21171E-01      0.81907E-02
    r2_chcond1             0.77259          0.51285E-01
    r2_chcond2              1.0204          0.63007E-01
    scale1                 0.99674          0.43107E-01
    scale2                 0.56067          0.40558E-01
    corr                   0.83217          0.27601E-01

<S> stop