Nou în

Model de logit multinomial panou-date

Modelul multinomial logit (MNL) este o metodă populară pentru modelarea rezultatelor categorice care nu au o ordonare naturală – rezultate precum ocupația, partidul politic sau alegerea restaurantului.
În datele longitudinale / de panou, observăm o succesiune de rezultate în timp. Spuneți că observăm în fiecare săptămână opțiunile de restaurant făcute de persoane. Crezi că alegerile de restaurant sunt independente de la săptămână la săptămână? Probabil ca nu. Cineva căruia îi place mâncarea italiană este probabil să aleagă un restaurant italian de mai multe ori. Aceste alegeri sunt determinate de preferințele și caracteristicile personale subiacente, dintre care unele nu sunt respectate.
Noua comandă xtmlogit a Stata se potrivește cu modelele MNL cu efecte aleatorii și cu efecte fixe condiționate pentru rezultate categorice observate în timp.
Pentru a se potrivi unui model logit multinomial cu efecte aleatorii, putem tasta

. xtset subject
. xtmlogit restaurant age

și se estimează coeficienții logit multinomiali standard care țin cont de caracteristicile specifice subiectului invariante în timp, incluzând efecte aleatorii specifice fiecărui nivel de rezultat.
Cu comanda de mai sus, se presupune că efectele aleatorii sunt distribuite în mod normal și independente între nivelurile de rezultate (alegeri de restaurant), dar sunt acceptate mai multe structuri de varianță-covarianță, inclusiv o covarianță complet nerestricționată:

. xtmlogit restaurant age, covariance(unstructured)

Dacă bănuiți că efectele specifice subiectului ar putea fi corelate cu vârsta, puteți utiliza un estimator condiționat de efecte fixe pentru a explica acest lucru:

. xtmlogit restaurant age, fe

Repere

Modelarea panoului de date a rezultatelor categorice neordonate

Estimator de efecte aleatorii

  • Alegerea structurii de covarianță pentru efectele aleatorii
    • Independent
    • Identitate
    • Partajat
    • Schimbabil
    • Nestructurat

Estimator de efecte fixe condiționate (FE)

  • Subseturile de permutare diminuează blestemul dimensionalității

Estimarea bayesiană

Erori standard robuste, cluster-robuste și bootstrap

Suport pentru date complexe ale sondajului

Să vedem cum funcționează

Dorim să aflăm dacă indivizii sunt mai susceptibili de a ieși din forța de muncă dacă au în gospodărie copii sub vârsta de cinci ani. Vom folosi un set de date (fictiv) al bărbaților și femeilor care au fost întrebați despre statutul lor de angajare la fiecare doi ani.

. use https://www.stata-press.com/data/r17/estatus
(Fictitious employment status data)

Iată un extras al setului de date, care arată istoricul ocupării forței de muncă pentru trei persoane:

. list id year estatus hhchild age in 22/41, sepby(id) noobs

id year estatus hhchild age
5 2002 Employed Yes 38
5 2004 Employed No 40
5 2006 Employed No 42
5 2008 Employed No 44
5 2010 Out of labor force No 46
5 2012 Out of labor force No 48
5 2014 Unemployed No 50
6 2002 Unemployed Yes 31
6 2004 Employed Yes 33
6 2006 Out of labor force Yes 35
6 2008 Unemployed Yes 37
6 2010 Out of labor force Yes 39
6 2012 Unemployed No 41
7 2002 Out of labor force Yes 33
7 2004 Employed Yes 35
7 2006 Employed Yes 37
7 2008 Out of labor force Yes 39
7 2010 Employed No 41
7 2012 Employed No 43
7 2014 Employed No 45

Rezultatul interesului este statutul de ocupare (estatus), care are trei niveluri: Employed, Unemployed (dar care caută un loc de muncă) și Out of labor force (care nu caută un loc de muncă). Predictorul nostru de interes, hhchild, indică dacă au copii sub vârsta de cinci ani în gospodăria lor la momentul interviului.
Înainte de a ne potrivi modelului nostru, trebuie să specificăm variabila de identificare a panoului, id, utilizând xtset.

. xtset id

Panel variable: id (unbalanced)

Acum putem folosi xtmlogit pentru a modela probabilitatea fiecărui tip de angajare de către hhchild, controlând în același timp efectele vârstei, venitul anual al gospodăriei (hhincome) și dacă o altă persoană semnificativă locuia și în gospodărie (hhsigno). Vom începe cu un model de efecte aleatorii (implicit) și vom folosi opțiunea rrr pentru a obține coeficienți exponențiați care pot fi interpretați ca raporturi de risc relativ.

. xtmlogit estatus i.hhchild age hhincome i.hhsigno, rrr

Fitting comparison model ...

Refining starting values:

Grid node 0:   log likelihood = -4504.5591
Grid node 1:   log likelihood = -4538.6352

Fitting full model:

Iteration 0:   log likelihood = -4504.5591
Iteration 1:   log likelihood =  -4495.871
Iteration 2:   log likelihood = -4490.5098
Iteration 3:   log likelihood = -4490.4197
Iteration 4:   log likelihood = -4490.4196

Random-effects multinomial logistic regression       Number of obs    =  4,761
Group variable: id                                   Number of groups =    800

Random effects u_i ~ Gaussian                        Obs per group:
                                                                  min =      5
                                                                  avg =    6.0
                                                                  max =      7

Integration method: mvaghermite                      Integration pts. =      7

                                                     Wald chi2(8)     = 199.25
Log likelihood = -4490.4196                          Prob > chi2      = 0.0000

estatus RRR Std. err. z P>|z| [95% conf. interval]
Out_of_labor_force
hhchild
Yes 1.579937 .1513905 4.77 0.000 1.309414 1.906349
age .9947946 .0065832 -0.79 0.430 .981975 1.007781
hhincome .9954927 .0018251 -2.46 0.014 .9919221 .9990762
hhsigno
Yes 1.642859 .1550291 5.26 0.000 1.365452 1.976625
_cons .4949307 .1392991 -2.50 0.012 .2850836 .859244
Unemployed
hhchild
Yes .9607243 .1148148 -0.34 0.737 .7601038 1.214296
age 1.004257 .008211 0.52 0.603 .9882918 1.02048
hhincome .9696874 .0025722 -11.60 0.000 .964659 .9747421
hhsigno
Yes 1.099323 .1310654 0.79 0.427 .8702452 1.388701
_cons .8078165 .280628 -0.61 0.539 .4088963 1.595924
Employed (base outcome)
var(u1) .8573133 .1083915 .6691459 1.098394
var(u2) .7378532 .1388652 .5102376 1.067008
Note: Estimates are transformed only in the first 3 equations to relative-risk ratios. Note: _cons estimates baseline relative risk (conditional on zero random effects). LR test vs. multinomial logit: chi2(2) = 227.68 Prob > chi2 = 0.0000 Note: LR test is conservative and provided only for reference.

Primele două secțiuni din rezultat arată estimările raportului de risc relativ ale predictorilor noștri în raport cu categoria de bază Employed. Ultima secțiune prezintă variațiile estimate ale efectelor aleatorii. În mod implicit, efectele aleatorii sunt necorelate, dar structura lor de covarianță poate fi modificată folosind opțiunea covariance(). De exemplu, corelațiile dintre efectele aleatorii pot fi estimate folosind covariance(unstructured) sau fiecare categorie poate împărtăși un efect aleatoriu comun folosind covariance(shared).
Ajustându-se în funcție de vârstă, venitul gospodăriei și având o altă persoană semnificativă acasă, riscul relativ de a ieși din forța de muncă pentru persoanele care au cel puțin un copil cu vârsta sub 5 ani în gospodărie față de faptul că nu au copii sub 5 ani în gospodărie este De 1,6 ori mai mare decât riscul relativ de angajare (IC 95% [1,3, 1,9]). Pentru a înțelege aceste efecte în termeni de probabilități, putem folosi comanda margins.

. margins hhchild

Predictive margins                                       Number of obs = 4,761
Model VCE: OIM

1._predict: Pr(estatus==Out_of_labor_force), predict(pr outcome(1))
2._predict: Pr(estatus==Unemployed), predict(pr outcome(2))
3._predict: Pr(estatus==Employed), predict(pr outcome(3))

Delta-method
Margin std. err. z P>|z| [95% conf. interval]
_predict#hhchild
1#No .3025675 .0131546 23.00 0.000 .276785 .32835
1#Yes .3912476 .0120405 32.49 0.000 .3676486 .4148466
2#No .1628713 .0101131 16.11 0.000 .1430501 .1826925
2#Yes .1398537 .0079462 17.60 0.000 .1242794 .1554279
3#No .5345612 .0136994 39.02 0.000 .5077108 .5614116
3#Yes .4688987 .0116594 40.22 0.000 .4460468 .4917507

Pentru o persoană fără copii, probabilitatea așteptată de a ieși din forța de muncă (1 # No) este 0,30, probabilitatea așteptată de a fi șomer (2 # No) este 0,16, iar probabilitatea așteptată de a fi angajată este 0,53 (3 #No). De asemenea, constatăm că persoanele cu copii în gospodărie își cresc probabilitatea de a ieși din forța de muncă cu 9 puncte procentuale. Am putut vedea cum aceste probabilități se modifică în funcție de venitul gospodăriei utilizând o comandă de marjă suplimentară și să vizualizăm rezultatele folosind marginsplot.

. quietly margins hhchild, at(hhincome=(20(20)100))

. marginsplot, by(_predict, label("Out of labor force" "Unemployed" "Employed"))
byopts(rows(1) title("Marginal probabilities of employment status"))
legend(order(4 "Child under 5 at home" 3 "No child under 5 at home"))

To get separate graphs for each outcome, we used the by(_predict) option in marginsplot. The rest of the options add titles and labels.
Comparing the lines within each employment category, we see that having a child at home does not have much impact on the probability of being unemployed but does influence the decision to work or to be out of the labor force.
In the model we just fit, we used random effects to account for unobserved characteristics of the individuals in our dataset. Random-effects models require that the random effects be uncorrelated with the predictors, and the random-effects MNL model is no exception. A widely used alternative is the fixed-effects estimator. To fit our model with conditional fixed effects, we simply add the fe option.

. xtmlogit estatus i.hhchild age hhincome i.hhsigno, fe rrr
note: 80 groups (451 obs) omitted because of no variation in the outcome variable over time.

Computing initial values ...

Setting up 26,168 permutations:
....10%....20%....30%....40%....50%....60%....70%....80%....90%....100%

Fitting full model:

Iteration 0:   log likelihood = -2154.4175
Iteration 1:   log likelihood = -2154.2058
Iteration 2:   log likelihood = -2154.2057

Fixed-effects multinomial logistic regression        Number of obs    =  4,310
Group variable: id                                   Number of groups =    720

                                                     Obs per group:
                                                                  min =      5
                                                                  avg =    6.0
                                                                  max =      7

                                                     LR chi2(8)       =  67.42
Log likelihood = -2154.2057                          Prob > chi2      = 0.0000

estatus RRR Std. err. z P>|z| [95% conf. interval]
Out_of_labor_force
hhchild
Yes 1.784236 .2237128 4.62 0.000 1.395488 2.28128
age .9977834 .0146507 -0.15 0.880 .9694778 1.026915
hhincome .9895225 .0086923 -1.20 0.231 .9726318 1.006707
hhsigno
Yes 1.658753 .1654425 5.07 0.000 1.364217 2.016878
Unemployed
hhchild
Yes 1.181866 .1933766 1.02 0.307 .8576197 1.628702
age 1.004991 .0194887 0.26 0.797 .967511 1.043924
hhincome .9717411 .0116616 -2.39 0.017 .9491514 .9948684
hhsigno
Yes 1.11936 .1454154 0.87 0.385 .8677426 1.443939
Employed (base outcome)

Rezultatele sunt similare cu cele ale estimatorului de efecte aleatorii. Și pot fi interpretate în același mod.