# Tabulating SPost results

The SPost package by Scott Long and Jeremy Freese is a suite of post-estimation commands used to compute additional tests and effects representations for a variety of regression models (see http://www.indiana.edu/~jslsoc/spost.htm). To facilitate and automate the task of processing result from SPost for inclusion in reports and publications, estadd provides tools to integrate SPost results with estout or esttab.

Supported commands are brant, fitstat, listcoef, mlogtest, prchange, prvalue, and asprvalue from SPost for Stata 9 or newer (spost9_ado). SPost for Stata 8 (spostado) is not supported. See the SPost section in estadd's documentation for further details. Below is a range of examples covering various models and applications.

## Introductory examples

### From SPost to esttab/estout

The general procedure to tabulate results from an SPost command in esttab or estout is to

1. fit one or more models,
2. use estadd to apply the SPost command and add the results to the models' e()-returns, and
3. include the added returns in the the main(), aux(), and scalars() options of esttab or the cells() and stats() options of estout.

For example, to tabulate a number of fitstat information measures for a linear regression model, type:

```. spex regjob2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/regjob2.dta", clear

. regress job fem phd ment fel art cit

Source |       SS       df       MS              Number of obs =     408
-------------+------------------------------           F(  6,   401) =   17.78
Model |  81.0584763     6  13.5097461           Prob > F      =  0.0000
Residual |  304.737915   401  .759944926           R-squared     =  0.2101
Total |  385.796392   407  .947902683           Root MSE      =  .87175

------------------------------------------------------------------------------
job |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
fem |  -.1391939   .0902344    -1.54   0.124    -.3165856    .0381977
phd |   .2726826   .0493183     5.53   0.000     .1757278    .3696375
ment |   .0011867   .0007012     1.69   0.091    -.0001917    .0025651
fel |   .2341384   .0948206     2.47   0.014     .0477308    .4205461
art |   .0228011   .0288843     0.79   0.430    -.0339824    .0795846
cit |   .0044788   .0019687     2.28   0.023     .0006087     .008349
_cons |   1.067184   .1661357     6.42   0.000     .7405785     1.39379
------------------------------------------------------------------------------

AIC:                             2.580   AIC*n:                        1052.793
BIC:                         -1371.725   BIC':                          -60.162
BIC used by Stata:            1080.872   AIC used by Stata:            1052.793

e(aic0) =  2.5803757
e(aic_n) =  1052.7933
e(bic0) =  -1371.7248
e(bic_p) =  -60.162312
e(statabic) =  1080.8722
e(stataaic) =  1052.7933

. esttab, cells(none) scalars(aic0 aic_n bic0 bic_p)

-------------------------
(1)
job
-------------------------
N                     408
aic0                2.580
aic_n              1052.8
bic0              -1371.7
bic_p              -60.16
-------------------------
[do-file]
```

If you are working with multiple models you can either add results to each model individually after estimation (as above), or you can first estimate and store a set of models and then apply estadd to all of them in one call using the colon syntax. Here is an example of the latter, using eststo to store the models:

```. spex regjob2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/regjob2.dta", clear

. eststo: regress job fem phd ment

Source |       SS       df       MS              Number of obs =     408
-------------+------------------------------           F(  3,   404) =   23.77
Model |  57.8903644     3  19.2967881           Prob > F      =  0.0000
Residual |  327.906027   404  .811648583           R-squared     =  0.1501
Total |  385.796392   407  .947902683           Root MSE      =  .90092

------------------------------------------------------------------------------
job |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
fem |  -.1769641   .0915984    -1.93   0.054    -.3570331     .003105
phd |   .3307536   .0495896     6.67   0.000     .2332678    .4282395
ment |   .0015841   .0007207     2.20   0.029     .0001673    .0030009
_cons |   1.171768   .1635376     7.17   0.000     .8502769    1.493259
------------------------------------------------------------------------------
(est1 stored)

. eststo: regress job fem phd ment fel art cit

Source |       SS       df       MS              Number of obs =     408
-------------+------------------------------           F(  6,   401) =   17.78
Model |  81.0584763     6  13.5097461           Prob > F      =  0.0000
Residual |  304.737915   401  .759944926           R-squared     =  0.2101
Total |  385.796392   407  .947902683           Root MSE      =  .87175

------------------------------------------------------------------------------
job |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
fem |  -.1391939   .0902344    -1.54   0.124    -.3165856    .0381977
phd |   .2726826   .0493183     5.53   0.000     .1757278    .3696375
ment |   .0011867   .0007012     1.69   0.091    -.0001917    .0025651
fel |   .2341384   .0948206     2.47   0.014     .0477308    .4205461
art |   .0228011   .0288843     0.79   0.430    -.0339824    .0795846
cit |   .0044788   .0019687     2.28   0.023     .0006087     .008349
_cons |   1.067184   .1661357     6.42   0.000     .7405785     1.39379
------------------------------------------------------------------------------
(est2 stored)

. esttab, cells(none) scalars(aic0 aic_n bic0 bic_p)

--------------------------------------
(1)          (2)
job          job
--------------------------------------
N                     408          408
aic0                2.639        2.580
aic_n              1076.7       1052.8
bic0              -1359.9      -1371.7
bic_p              -48.30       -60.16
--------------------------------------

. eststo clear
[do-file]
```

A key difference between the two approaches is that with the first method output from estadd fitstat is displayed, whereas execution with the second syntax is silent.

### Tabulating results from prchange

The default for estadd prchange is to return a matrix called e(dc) containing the 0 to 1 change effects for binary variables and the standard deviation change effects for continuous variables in the first row, followed by additional rows containing separate results for the different effect types computed by prchange. To tabulate the contents of the first row simply refer to dc in esttab or estout. Example:

```. spex binlfp2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/binlfp2.dta", clear

. quietly logit lfp k5 k618 age wc hc lwg inc, nolog

logit: Changes in Probabilities for lfp

min->max      0->1     -+1/2    -+sd/2  MargEfct
k5   -0.6361   -0.3499   -0.3428   -0.1849   -0.3569
k618   -0.1278   -0.0156   -0.0158   -0.0208   -0.0158
age   -0.4372   -0.0030   -0.0153   -0.1232   -0.0153
wc    0.1881    0.1881    0.1945    0.0884    0.1969
hc    0.0272    0.0272    0.0273    0.0133    0.0273
lwg    0.6624    0.1499    0.1465    0.0865    0.1475
inc   -0.6415   -0.0068   -0.0084   -0.0975   -0.0084

NotInLF     inLF
Pr(y|x)   0.4222   0.5778

k5     k618      age       wc       hc      lwg      inc
x=  .237716  1.35325  42.5378  .281541  .391766  1.09711   20.129
sd_x=  .523959  1.31987  8.07257  .450049  .488469  .587556  11.6348

e(predval) =  .57779419
e(delta) =  1
e(centered) =  1

e(dc) :  6 x 7      (main, min->max, 0->1, -+1/2, -+sd/2, Marg
> Efct)
e(pattern) :  1 x 7
e(X) :  4 x 7      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
sd change for continuous variables

. esttab, aux(dc) nopar wide

-----------------------------------------
(1)
lfp
-----------------------------------------
k5                 -1.463***       -0.185
k618              -0.0646         -0.0208
age               -0.0629***       -0.123
wc                  0.807***        0.188
hc                  0.112          0.0272
lwg                 0.605***       0.0865
inc               -0.0344***      -0.0975
_cons               3.182***
-----------------------------------------
N                     753
-----------------------------------------
dc in second column
* p<0.05, ** p<0.01, *** p<0.001
[do-file]
```

To change the defaults for the contents of the first row of e(dc) use the c() option (for continuous variables) and the b() option (for binary variables). For example, to tabulate the marginal effects for continuous variables and the 0 to 1 change effects for binary variables (see the helpfile for the list of available effects types), type:

```. estadd prchange, c(margefct) replace

logit: Changes in Probabilities for lfp

min->max      0->1     -+1/2    -+sd/2  MargEfct
k5   -0.6361   -0.3499   -0.3428   -0.1849   -0.3569
k618   -0.1278   -0.0156   -0.0158   -0.0208   -0.0158
age   -0.4372   -0.0030   -0.0153   -0.1232   -0.0153
wc    0.1881    0.1881    0.1945    0.0884    0.1969
hc    0.0272    0.0272    0.0273    0.0133    0.0273
lwg    0.6624    0.1499    0.1465    0.0865    0.1475
inc   -0.6415   -0.0068   -0.0084   -0.0975   -0.0084

NotInLF     inLF
Pr(y|x)   0.4222   0.5778

k5     k618      age       wc       hc      lwg      inc
x=  .237716  1.35325  42.5378  .281541  .391766  1.09711   20.129
sd_x=  .523959  1.31987  8.07257  .450049  .488469  .587556  11.6348

e(predval) =  .57779419
e(delta) =  1
e(centered) =  1

e(dc) :  6 x 7      (main, min->max, 0->1, -+1/2, -+sd/2, Marg
> Efct)
e(pattern) :  1 x 7
e(X) :  4 x 7      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
margefct for continuous variables

. esttab, aux(dc) nopar wide

-----------------------------------------
(1)
lfp
-----------------------------------------
k5                 -1.463***       -0.357
k618              -0.0646         -0.0158
age               -0.0629***      -0.0153
wc                  0.807***        0.188
hc                  0.112          0.0272
lwg                 0.605***        0.148
inc               -0.0344***     -0.00840
_cons               3.182***
-----------------------------------------
N                     753
-----------------------------------------
dc in second column
* p<0.05, ** p<0.01, *** p<0.001
[do-file]
```

Alternatively, if you want to tabulate the different effect types computed by prchange separately, address the rows in e(dc) using dc[#] where # is the row number or dc[name] where name is the row name. Example:

```. spex binlfp2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/binlfp2.dta", clear

. quietly logit lfp k5 k618 age wc hc lwg inc, nolog

logit: Changes in Probabilities for lfp

min->max      0->1     -+1/2    -+sd/2  MargEfct
k5   -0.6361   -0.3499   -0.3428   -0.1849   -0.3569
k618   -0.1278   -0.0156   -0.0158   -0.0208   -0.0158
age   -0.4372   -0.0030   -0.0153   -0.1232   -0.0153
wc    0.1881    0.1881    0.1945    0.0884    0.1969
hc    0.0272    0.0272    0.0273    0.0133    0.0273
lwg    0.6624    0.1499    0.1465    0.0865    0.1475
inc   -0.6415   -0.0068   -0.0084   -0.0975   -0.0084

NotInLF     inLF
Pr(y|x)   0.4222   0.5778

k5     k618      age       wc       hc      lwg      inc
x=  .237716  1.35325  42.5378  .281541  .391766  1.09711   20.129
sd_x=  .523959  1.31987  8.07257  .450049  .488469  .587556  11.6348

e(predval) =  .57779419
e(delta) =  1
e(centered) =  1

e(dc) :  6 x 7      (main, min->max, 0->1, -+1/2, -+sd/2, Marg
> Efct)
e(pattern) :  1 x 7
e(X) :  4 x 7      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
sd change for continuous variables

. esttab, cells("dc[2] dc[3] dc[4] dc[5] dc[6]")

-----------------------------------------------------------------------------
(1)
lfp
dc[2]        dc[3]        dc[4]        dc[5]        dc[6]
-----------------------------------------------------------------------------
k5              -.6360998    -.3498737    -.3427888    -.1848925    -.3568748
k618            -.1277862    -.0156047    -.0157506    -.0207876    -.0157519
age             -.4372017     -.002954     -.015336    -.1231976    -.0153371
wc               .1880592     .1880592     .1944887     .0884042     .1969329
hc               .0271984     .0271984     .0272506     .0133135     .0272572
lwg              .6624324     .1499499       .14648     .0864619     .1475137
inc             -.6415044    -.0068042     -.008403    -.0974665    -.0084031
-----------------------------------------------------------------------------
N                     753
-----------------------------------------------------------------------------

. esttab, cells("dc[min->max] dc[0->1] dc[-+1/2] dc[-+sd/2] dc[MargEfct]")

-----------------------------------------------------------------------------
(1)
lfp
min->max         0->1        -+1/2       -+sd/2     MargEfct
-----------------------------------------------------------------------------
k5              -.6360998    -.3498737    -.3427888    -.1848925    -.3568748
k618            -.1277862    -.0156047    -.0157506    -.0207876    -.0157519
age             -.4372017     -.002954     -.015336    -.1231976    -.0153371
wc               .1880592     .1880592     .1944887     .0884042     .1969329
hc               .0271984     .0271984     .0272506     .0133135     .0272572
lwg              .6624324     .1499499       .14648     .0864619     .1475137
inc             -.6415044    -.0068042     -.008403    -.0974665    -.0084031
-----------------------------------------------------------------------------
N                     753
-----------------------------------------------------------------------------
[do-file]
```

### Tabulating results from prvalue or asprvalue

The procedure to prepare results from prvalue for tabulation is to first collect a series of predictions by repeated calls to estadd prvalue and then apply estadd prvalue post to rearrange results and post them in e(). Use the label() option to label the single predictions. Example:

```. spex binlfp2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/binlfp2.dta", clear

. logit lfp k5 k618 age wc hc lwg inc, nolog

Logistic regression                               Number of obs   =        753
LR chi2(7)      =     124.48
Prob > chi2     =     0.0000
Log likelihood = -452.63296                       Pseudo R2       =     0.1209

------------------------------------------------------------------------------
lfp |      Coef.   Std. Err.      z    P>|z|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
k5 |  -1.462913   .1970006    -7.43   0.000    -1.849027   -1.076799
k618 |  -.0645707   .0680008    -0.95   0.342    -.1978499    .0687085
age |  -.0628706   .0127831    -4.92   0.000    -.0879249   -.0378162
wc |   .8072738   .2299799     3.51   0.000     .3565215    1.258026
hc |   .1117336   .2060397     0.54   0.588    -.2920969     .515564
lwg |   .6046931   .1508176     4.01   0.000     .3090961    .9002901
inc |  -.0344464   .0082084    -4.20   0.000    -.0505346   -.0183583
_cons |    3.18214   .6443751     4.94   0.000     1.919188    4.445092
------------------------------------------------------------------------------

. estadd prvalue, x(age=35 k5=2 wc=0 hc=0 inc=15) label(family type 1)

logit: Predictions for lfp

Confidence intervals by delta method

95% Conf. Interval
Pr(y=inLF|x):       0.1318   [ 0.0556,    0.2081]
Pr(y=NotInLF|x):    0.8682   [ 0.7919,    0.9444]

k5       k618        age         wc         hc        lwg
x=          2  1.3532537         35          0          0  1.0971148

inc
x=         15

. estadd prvalue, x(age=50 k5=0 k618=0 wc=1 hc=1) label(family type 2)

logit: Predictions for lfp

Confidence intervals by delta method

95% Conf. Interval
Pr(y=inLF|x):       0.7166   [ 0.6333,    0.7999]
Pr(y=NotInLF|x):    0.2834   [ 0.2001,    0.3667]

k5       k618        age         wc         hc        lwg
x=          0          0         50          1          1  1.0971148

inc
x=  20.128965

updated matrices:

logit: Predictions for lfp

Confidence intervals by delta method

95% Conf. Interval
Pr(y=inLF|x):       0.5778   [ 0.5392,    0.6164]
Pr(y=NotInLF|x):    0.4222   [ 0.3836,    0.4608]

k5       k618        age         wc         hc        lwg
x=   .2377158  1.3532537  42.537849   .2815405  .39176627  1.0971148

inc
x=  20.128965

updated matrices:

scalars:
e(N) =  753

macros:
e(depvar) : "lfp"
e(model) : "logit"
e(properties) : "b"

matrices:
e(b) :  1 x 6      (predictions)
e(se) :  1 x 6      (standard errors)
e(LB) :  1 x 6      (lower CI bounds)
e(UB) :  1 x 6      (upper CI bounds)
e(Category) :  1 x 6      (outcome values)
e(X) :  7 x 3      (k5, k618, age, wc, hc, lwg, inc)

. esttab, ci wide nostar ///
>     keep(inLF:) eqlabels(none) varwidth(15)

---------------------------------------------------
(1)
lfp
---------------------------------------------------
family type 1          0.132         [0.0556,0.208]
family type 2          0.717          [0.633,0.800]
average family         0.578          [0.539,0.616]
---------------------------------------------------
N                        753
---------------------------------------------------
95% confidence intervals in brackets
[do-file]
```

The procedure for asprvalue is analogous (however, note that asprvalue does not provide standard errors or confidence intervals).

### Tabulating differences in predictions from prvalue or asprvalue

If you want to tabulate differences in predictions, first apply prvalue (or asprvalue) with the save option and then estadd prvalue (or estadd asprvalue) with the diff option. Example:

```. spex binlfp2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/binlfp2.dta", clear

. quietly logit lfp k5 k618 age wc hc lwg inc, nolog

. quietly prvalue, x(k5=0 wc=0) save

. estadd  prvalue, x(k5=0 wc=1) label(k5 = 0) brief diff

logit: Change in Predictions for lfp

Current     Saved    Change   95% CI for Change
Pr(y=inLF|x):       0.7758    0.6069    0.1689  [ 0.0830,   0.2549]
Pr(y=NotInLF|x):    0.2242    0.3931   -0.1689  [-0.2549,  -0.0830]

. quietly prvalue, x(k5=1 wc=0) save

. estadd  prvalue, x(k5=1 wc=1) label(k5 = 1) brief diff

logit: Change in Predictions for lfp

Current     Saved    Change   95% CI for Change
Pr(y=inLF|x):       0.4449    0.2633    0.1815  [ 0.0763,   0.2868]
Pr(y=NotInLF|x):    0.5551    0.7367   -0.1815  [-0.2868,  -0.0763]

updated matrices:

. quietly prvalue, x(k5=2 wc=0) save

. estadd  prvalue, x(k5=2 wc=1) label(k5 = 2) brief diff

logit: Change in Predictions for lfp

Current     Saved    Change   95% CI for Change
Pr(y=inLF|x):       0.1565    0.0764    0.0801  [ 0.0156,   0.1445]
Pr(y=NotInLF|x):    0.8435    0.9236   -0.0801  [-0.1445,  -0.0156]

updated matrices:

scalars:
e(N) =  753

macros:
e(depvar) : "lfp"
e(model) : "logit"
e(properties) : "b"

matrices:
e(b) :  1 x 6      (predictions)
e(se) :  1 x 6      (standard errors)
e(LB) :  1 x 6      (lower CI bounds)
e(UB) :  1 x 6      (upper CI bounds)
e(Category) :  1 x 6      (outcome values)
e(X) :  7 x 3      (k5, k618, age, wc, hc, lwg, inc)

. esttab, keep(inLF:) ci wide nostar ///
>     mtitle("wc=1 - wc=0")

------------------------------------------------
(1)
wc=1 - wc=0
------------------------------------------------
inLF
k5 = 0              0.169         [0.0830,0.255]
k5 = 1              0.182         [0.0763,0.287]
k5 = 2             0.0801         [0.0156,0.145]
------------------------------------------------
N                     753
------------------------------------------------
95% confidence intervals in brackets
[do-file]
```

### Tabulating bootstrap confidence intervals from prvalue

The confidence bounds computed by prvalue are saved by estadd prvalue post in e(LB) and e(UB). The following example illustrates how to tabulate these results:

```. spex binlfp2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/binlfp2.dta", clear

. quietly logit lfp k5 k618 age wc hc lwg inc, nolog

. estadd prvalue, x(age=35 k5=2 wc=0 hc=0 inc=15) ///
>     label(family type 1) bootstrap

logit: Predictions for lfp

Bootstrap confidence intervals using percentile method
(1000 of 1000 replications completed)

95% Conf. Interval
Pr(y=inLF|x):       0.1318   [ 0.0647,    0.2273]
Pr(y=NotInLF|x):    0.8682   [ 0.7727,    0.9353]

k5       k618        age         wc         hc        lwg
x=          2  1.3532537         35          0          0  1.0971148

inc
x=         15

. estadd prvalue, x(age=50 k5=0 k618=0 wc=1 hc=1) ///
>     label(family type 2) bootstrap

logit: Predictions for lfp

Bootstrap confidence intervals using percentile method
(1000 of 1000 replications completed)

95% Conf. Interval
Pr(y=inLF|x):       0.7166   [ 0.6215,    0.7961]
Pr(y=NotInLF|x):    0.2834   [ 0.2039,    0.3785]

k5       k618        age         wc         hc        lwg
x=          0          0         50          1          1  1.0971148

inc
x=  20.128965

updated matrices:

. estadd prvalue, label(average family) bootstrap

logit: Predictions for lfp

Bootstrap confidence intervals using percentile method
(1000 of 1000 replications completed)

95% Conf. Interval
Pr(y=inLF|x):       0.5778   [ 0.5397,    0.6249]
Pr(y=NotInLF|x):    0.4222   [ 0.3751,    0.4603]

k5       k618        age         wc         hc        lwg
x=   .2377158  1.3532537  42.537849   .2815405  .39176627  1.0971148

inc
x=  20.128965

updated matrices:

scalars:
e(N) =  753

macros:
e(depvar) : "lfp"
e(model) : "logit"
e(properties) : "b"

matrices:
e(b) :  1 x 6      (predictions)
e(se) :  1 x 6      (standard errors)
e(LB) :  1 x 6      (lower CI bounds)
e(UB) :  1 x 6      (upper CI bounds)
e(Category) :  1 x 6      (outcome values)
e(X) :  7 x 3      (k5, k618, age, wc, hc, lwg, inc)

. esttab, cells("b LB UB") ///
>     keep(inLF:) eqlabels(none) varwidth(15)

------------------------------------------------------
(1)
lfp
b           LB           UB
------------------------------------------------------
family type 1       .1318369     .0647168     .2273178
family type 2       .7166017     .6214858     .7960634
average family      .5777942     .5397016     .6249324
------------------------------------------------------
N                        753
------------------------------------------------------
[do-file]
```

## Logit and probit

### Logit/probit and fitstat

```. spex binlfp2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/binlfp2.dta", clear

. quietly logit lfp k5 k618 age wc hc lwg inc, nolog

Measures of Fit for logit of lfp

Log-Lik Intercept Only:       -514.873   Log-Lik Full Model:           -452.633
D(745):                        905.266   LR(7):                         124.480
Prob > LR:                       0.000
ML (Cox-Snell) R2:               0.152   Cragg-Uhler(Nagelkerke) R2:      0.204
McKelvey & Zavoina's R2:         0.217   Efron's R2:                      0.155
Variance of y*:                  4.203   Variance of error:               3.290
Count R2:                        0.693   Adj Count R2:                    0.289
AIC:                             1.223   AIC*n:                         921.266
BIC:                         -4029.663   BIC':                          -78.112
BIC used by Stata:             958.258   AIC used by Stata:             921.266

e(dev) =  905.26592
e(dev_df) =  745
e(lrx2) =  124.48049
e(lrx2_df) =  7
e(lrx2_p) =  8.923e-24
e(r2_mf) =  .12088461
e(r2_ml) =  .15237143
e(r2_cu) =  .20445312
e(r2_mz) =  .2171939
e(r2_ef) =  .15493519
e(v_ystar) =  4.2026603
e(v_error) =  3.2898681
e(r2_ct) =  .69322709
e(aic0) =  1.2234607
e(aic_n) =  921.26592
e(bic0) =  -4029.6627
e(bic_p) =  -78.112037
e(statabic) =  958.25844
e(stataaic) =  921.26592
e(n_rhs) =  7
e(n_parm) =  8

. eststo logit

. quietly probit lfp k5 k618 age wc hc lwg inc, nolog

Measures of Fit for probit of lfp

Log-Lik Intercept Only:       -514.873   Log-Lik Full Model:           -452.695
D(745):                        905.390   LR(7):                         124.356
Prob > LR:                       0.000
ML (Cox-Snell) R2:               0.152   Cragg-Uhler(Nagelkerke) R2:      0.204
McKelvey & Zavoina's R2:         0.247   Efron's R2:                      0.154
Variance of y*:                  1.328   Variance of error:               1.000
Count R2:                        0.687   Adj Count R2:                    0.274
AIC:                             1.224   AIC*n:                         921.390
BIC:                         -4029.539   BIC':                          -77.988
BIC used by Stata:             958.382   AIC used by Stata:             921.390

e(dev) =  905.38993
e(dev_df) =  745
e(lrx2) =  124.35648
e(lrx2_df) =  7
e(lrx2_p) =  9.471e-24
e(r2_mf) =  .12076418
e(r2_ml) =  .15223182
e(r2_cu) =  .2042658
e(r2_mz) =  .24703502
e(r2_ef) =  .15420358
e(v_ystar) =  1.328083
e(v_error) =  1
e(r2_ct) =  .68658699
e(aic0) =  1.2236254
e(aic_n) =  921.38993
e(bic0) =  -4029.5387
e(bic_p) =  -77.988025
e(statabic) =  958.38245
e(stataaic) =  921.38993
e(n_rhs) =  7
e(n_parm) =  8

. eststo probit

. esttab, scalars(r2_mf r2_mfadj r2_ml r2_cu) wide mtitles

----------------------------------------------------------------------
(1)                          (2)
logit                       probit
----------------------------------------------------------------------
k5                 -1.463***      (-7.43)       -0.875***      (-7.70)
k618              -0.0646         (-0.95)      -0.0386         (-0.95)
age               -0.0629***      (-4.92)      -0.0378***      (-4.97)
wc                  0.807***       (3.51)        0.488***       (3.60)
hc                  0.112          (0.54)       0.0572          (0.46)
lwg                 0.605***       (4.01)        0.366***       (4.17)
inc               -0.0344***      (-4.20)      -0.0205***      (-4.30)
_cons               3.182***       (4.94)        1.918***       (5.04)
----------------------------------------------------------------------
N                     753                          753
r2_mf               0.121                        0.121
r2_ml               0.152                        0.152
r2_cu               0.204                        0.204
----------------------------------------------------------------------
t statistics in parentheses
* p<0.05, ** p<0.01, *** p<0.001

. eststo clear
[do-file]
```

### Logit/probit and listcoef

```. spex binlfp2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/binlfp2.dta", clear

. quietly logit lfp k5 k618 age wc hc lwg inc, nolog

logit (N=753): Unstandardized and Standardized Estimates

Observed SD: .49562951
Latent SD: 2.0500391

Odds of: inLF vs NotInLF

-------------------------------------------------------------------------------
lfp |      b         z     P>|z|    bStdX    bStdY   bStdXY      SDofX
-------------+-----------------------------------------------------------------
k5 |  -1.46291   -7.426   0.000  -0.7665  -0.7136  -0.3739     0.5240
k618 |  -0.06457   -0.950   0.342  -0.0852  -0.0315  -0.0416     1.3199
age |  -0.06287   -4.918   0.000  -0.5075  -0.0307  -0.2476     8.0726
wc |   0.80727    3.510   0.000   0.3633   0.3938   0.1772     0.4500
hc |   0.11173    0.542   0.588   0.0546   0.0545   0.0266     0.4885
lwg |   0.60469    4.009   0.000   0.3553   0.2950   0.1733     0.5876
inc |  -0.03445   -4.196   0.000  -0.4008  -0.0168  -0.1955    11.6348
-------------------------------------------------------------------------------

e(b_xs) :  1 x 7      (bStdX)
e(b_ys) :  1 x 7      (bStdY)
e(b_std) :  1 x 7      (bStdXY)
e(b_sdx) :  1 x 7      (SDofX)

. eststo logit

. quietly probit lfp k5 k618 age wc hc lwg inc, nolog

probit (N=753): Unstandardized and Standardized Estimates

Observed SD: .49562951
Latent SD: 1.1524248

-------------------------------------------------------------------------------
lfp |      b         z     P>|z|    bStdX    bStdY   bStdXY      SDofX
-------------+-----------------------------------------------------------------
k5 |  -0.87471   -7.703   0.000  -0.4583  -0.7590  -0.3977     0.5240
k618 |  -0.03859   -0.953   0.340  -0.0509  -0.0335  -0.0442     1.3199
age |  -0.03782   -4.971   0.000  -0.3053  -0.0328  -0.2649     8.0726
wc |   0.48831    3.604   0.000   0.2198   0.4237   0.1907     0.4500
hc |   0.05717    0.461   0.645   0.0279   0.0496   0.0242     0.4885
lwg |   0.36563    4.165   0.000   0.2148   0.3173   0.1864     0.5876
inc |  -0.02053   -4.297   0.000  -0.2388  -0.0178  -0.2072    11.6348
-------------------------------------------------------------------------------

e(b_xs) :  1 x 7      (bStdX)
e(b_ys) :  1 x 7      (bStdY)
e(b_std) :  1 x 7      (bStdXY)
e(b_sdx) :  1 x 7      (SDofX)

. eststo probit

. esttab, aux(b_std) nopar wide mtitles

----------------------------------------------------------------------
(1)                          (2)
logit                       probit
----------------------------------------------------------------------
k5                 -1.463***       -0.374       -0.875***       -0.398
k618              -0.0646         -0.0416      -0.0386         -0.0442
age               -0.0629***       -0.248      -0.0378***       -0.265
wc                  0.807***        0.177        0.488***        0.191
hc                  0.112          0.0266       0.0572          0.0242
lwg                 0.605***        0.173        0.366***        0.186
inc               -0.0344***       -0.195      -0.0205***       -0.207
_cons               3.182***                     1.918***
----------------------------------------------------------------------
N                     753                          753
----------------------------------------------------------------------
b_std in second column
* p<0.05, ** p<0.01, *** p<0.001

. eststo clear
[do-file]
```

### Logit and listcoef: factor and percent change

```. spex binlfp2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/binlfp2.dta", clear

. quietly logit lfp k5 k618 age wc hc lwg inc, nolog

e(b_xs) :  1 x 7      (bStdX)
e(b_ys) :  1 x 7      (bStdY)
e(b_std) :  1 x 7      (bStdXY)
e(b_sdx) :  1 x 7      (SDofX)

. estadd listcoef, quietly fact nosd

e(b_fact) :  1 x 7      (e^b)
e(b_facts) :  1 x 7      (e^bStdX)

. estadd listcoef, quietly per nosd

e(b_pct) :  1 x 7      (%)
e(b_pcts) :  1 x 7      (%StdX)

. esttab, cell("b_std b_facts b_pcts b_sdx")

----------------------------------------------------------------
(1)
lfp
b_std      b_facts       b_pcts        b_sdx
----------------------------------------------------------------
k5              -.3738985     .4646334    -53.53666      .523959
k618            -.0415725     .9183055    -8.169451     1.319874
age             -.2475695     .6019823    -39.80177     8.072574
wc               .1772225     1.438086      43.8086     .4500494
hc               .0266231     1.056095      5.60953     .4884694
lwg              .1733095     1.426596     42.65962     .5875564
inc             -.1954974     .6697992    -33.02008      11.6348
----------------------------------------------------------------
N                     753
----------------------------------------------------------------
[do-file]
```

### Logit/probit and prchange

```. spex binlfp2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/binlfp2.dta", clear

. quietly logit lfp k5 k618 age wc hc lwg inc, nolog

logit: Changes in Probabilities for lfp

min->max      0->1     -+1/2    -+sd/2  MargEfct
k5   -0.6361   -0.3499   -0.3428   -0.1849   -0.3569
k618   -0.1278   -0.0156   -0.0158   -0.0208   -0.0158
age   -0.4372   -0.0030   -0.0153   -0.1232   -0.0153
wc    0.1881    0.1881    0.1945    0.0884    0.1969
hc    0.0272    0.0272    0.0273    0.0133    0.0273
lwg    0.6624    0.1499    0.1465    0.0865    0.1475
inc   -0.6415   -0.0068   -0.0084   -0.0975   -0.0084

NotInLF     inLF
Pr(y|x)   0.4222   0.5778

k5     k618      age       wc       hc      lwg      inc
x=  .237716  1.35325  42.5378  .281541  .391766  1.09711   20.129
sd_x=  .523959  1.31987  8.07257  .450049  .488469  .587556  11.6348

e(predval) =  .57779419
e(delta) =  1
e(centered) =  1

e(dc) :  6 x 7      (main, min->max, 0->1, -+1/2, -+sd/2, Marg
> Efct)
e(pattern) :  1 x 7
e(X) :  4 x 7      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
sd change for continuous variables

. eststo logit

. quietly probit lfp k5 k618 age wc hc lwg inc, nolog

probit: Changes in Probabilities for lfp

min->max      0->1     -+1/2    -+sd/2  MargEfct
k5   -0.6441   -0.3380   -0.3320   -0.1778   -0.3422
k618   -0.1221   -0.0150   -0.0151   -0.0199   -0.0151
age   -0.4274   -0.0031   -0.0148   -0.1190   -0.0148
wc    0.1844    0.1844    0.1892    0.0858    0.1911
hc    0.0223    0.0223    0.0224    0.0109    0.0224
lwg    0.6649    0.1450    0.1423    0.0839    0.1431
inc   -0.6425   -0.0068   -0.0080   -0.0932   -0.0080

NotInLF     inLF
Pr(y|x)   0.4218   0.5782

k5     k618      age       wc       hc      lwg      inc
x=  .237716  1.35325  42.5378  .281541  .391766  1.09711   20.129
sd_x=  .523959  1.31987  8.07257  .450049  .488469  .587556  11.6348

e(predval) =  .57816368
e(delta) =  1
e(centered) =  1

e(dc) :  6 x 7      (main, min->max, 0->1, -+1/2, -+sd/2, Marg
> Efct)
e(pattern) :  1 x 7
e(X) :  4 x 7      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
sd change for continuous variables

. eststo probit

. esttab, aux(dc) nopar wide mtitles

----------------------------------------------------------------------
(1)                          (2)
logit                       probit
----------------------------------------------------------------------
k5                 -1.463***       -0.185       -0.875***       -0.178
k618              -0.0646         -0.0208      -0.0386         -0.0199
age               -0.0629***       -0.123      -0.0378***       -0.119
wc                  0.807***        0.188        0.488***        0.184
hc                  0.112          0.0272       0.0572          0.0223
lwg                 0.605***       0.0865        0.366***       0.0839
inc               -0.0344***      -0.0975      -0.0205***      -0.0932
_cons               3.182***                     1.918***
----------------------------------------------------------------------
N                     753                          753
----------------------------------------------------------------------
dc in second column
* p<0.05, ** p<0.01, *** p<0.001

. eststo clear
[do-file]
```

### Logit and prvalue

```. spex binlfp2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/binlfp2.dta", clear

. quietly logit lfp k5 k618 age wc hc lwg inc, nolog

. estadd prvalue, x(k5=0 wc=0) label(k5 = 0) brief

logit: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.6069   [ 0.5567,    0.6570]
Pr(y=NotInLF|x):    0.3931   [ 0.3430,    0.4433]

. estadd prvalue, x(k5=1 wc=0) label(k5 = 1) brief

logit: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.2633   [ 0.1932,    0.3335]
Pr(y=NotInLF|x):    0.7367   [ 0.6665,    0.8068]

updated matrices:

. estadd prvalue, x(k5=2 wc=0) label(k5 = 2) brief

logit: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.0764   [ 0.0258,    0.1271]
Pr(y=NotInLF|x):    0.9236   [ 0.8729,    0.9742]

updated matrices:

. estadd prvalue, x(k5=3 wc=0) label(k5 = 3) brief

logit: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.0188   [-0.0014,    0.0390]
Pr(y=NotInLF|x):    0.9812   [ 0.9610,    1.0014]

updated matrices:

scalars:
e(N) =  753

macros:
e(depvar) : "lfp"
e(model) : "logit"
e(properties) : "b"

matrices:
e(b) :  1 x 8      (predictions)
e(se) :  1 x 8      (standard errors)
e(LB) :  1 x 8      (lower CI bounds)
e(UB) :  1 x 8      (upper CI bounds)
e(Category) :  1 x 8      (outcome values)
e(X) :  7 x 4      (k5, k618, age, wc, hc, lwg, inc)

results stored as NoCollege

. estadd prvalue, x(k5=0 wc=1) label(k5 = 0) brief replace

logit: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.7758   [ 0.7077,    0.8439]
Pr(y=NotInLF|x):    0.2242   [ 0.1561,    0.2923]

. estadd prvalue, x(k5=1 wc=1) label(k5 = 1) brief

logit: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.4449   [ 0.3331,    0.5567]
Pr(y=NotInLF|x):    0.5551   [ 0.4433,    0.6669]

updated matrices:

. estadd prvalue, x(k5=2 wc=1) label(k5 = 2) brief

logit: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.1565   [ 0.0582,    0.2548]
Pr(y=NotInLF|x):    0.8435   [ 0.7452,    0.9418]

updated matrices:

. estadd prvalue, x(k5=3 wc=1) label(k5 = 3) brief

logit: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.0412   [-0.0021,    0.0845]
Pr(y=NotInLF|x):    0.9588   [ 0.9155,    1.0021]

updated matrices:

scalars:
e(N) =  753

macros:
e(depvar) : "lfp"
e(model) : "logit"
e(properties) : "b"

matrices:
e(b) :  1 x 8      (predictions)
e(se) :  1 x 8      (standard errors)
e(LB) :  1 x 8      (lower CI bounds)
e(UB) :  1 x 8      (upper CI bounds)
e(Category) :  1 x 8      (outcome values)
e(X) :  7 x 4      (k5, k618, age, wc, hc, lwg, inc)

results stored as College

. quietly prvalue, x(k5=0 wc=0) save

. estadd  prvalue, x(k5=0 wc=1) label(k5 = 0) brief diff replace

logit: Change in Predictions for lfp

Current     Saved    Change   95% CI for Change
Pr(y=inLF|x):       0.7758    0.6069    0.1689  [ 0.0830,   0.2549]
Pr(y=NotInLF|x):    0.2242    0.3931   -0.1689  [-0.2549,  -0.0830]

. quietly prvalue, x(k5=1 wc=0) save

. estadd  prvalue, x(k5=1 wc=1) label(k5 = 1) brief diff

logit: Change in Predictions for lfp

Current     Saved    Change   95% CI for Change
Pr(y=inLF|x):       0.4449    0.2633    0.1815  [ 0.0763,   0.2868]
Pr(y=NotInLF|x):    0.5551    0.7367   -0.1815  [-0.2868,  -0.0763]

updated matrices:

. quietly prvalue, x(k5=2 wc=0) save

. estadd  prvalue, x(k5=2 wc=1) label(k5 = 2) brief diff

logit: Change in Predictions for lfp

Current     Saved    Change   95% CI for Change
Pr(y=inLF|x):       0.1565    0.0764    0.0801  [ 0.0156,   0.1445]
Pr(y=NotInLF|x):    0.8435    0.9236   -0.0801  [-0.1445,  -0.0156]

updated matrices:

. quietly prvalue, x(k5=3 wc=0) save

. estadd  prvalue, x(k5=3 wc=1) label(k5 = 3) brief diff

logit: Change in Predictions for lfp

Current     Saved    Change   95% CI for Change
Pr(y=inLF|x):       0.0412    0.0188    0.0224  [-0.0037,   0.0485]
Pr(y=NotInLF|x):    0.9588    0.9812   -0.0224  [-0.0485,   0.0037]

updated matrices:

scalars:
e(N) =  753

macros:
e(depvar) : "lfp"
e(model) : "logit"
e(properties) : "b"

matrices:
e(b) :  1 x 8      (predictions)
e(se) :  1 x 8      (standard errors)
e(LB) :  1 x 8      (lower CI bounds)
e(UB) :  1 x 8      (upper CI bounds)
e(Category) :  1 x 8      (outcome values)
e(X) :  7 x 4      (k5, k618, age, wc, hc, lwg, inc)

results stored as Difference

. esttab, se nostar nonumber noobs mtitles ///
>     keep(inLF:) eqlabels(none)

---------------------------------------------------
NoCollege      College   Difference
---------------------------------------------------
k5 = 0              0.607        0.776        0.169
(0.0256)     (0.0348)     (0.0439)

k5 = 1              0.263        0.445        0.182
(0.0358)     (0.0570)     (0.0537)

k5 = 2             0.0764        0.157       0.0801
(0.0259)     (0.0502)     (0.0329)

k5 = 3             0.0188       0.0412       0.0224
(0.0103)     (0.0221)     (0.0133)
---------------------------------------------------
Standard errors in parentheses

. eststo clear
[do-file]
```

### Probit and prvalue

```. spex binlfp2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/binlfp2.dta", clear

. quietly probit lfp k5 k618 age wc hc lwg inc, nolog

. estadd prvalue, x(k5=0 wc=0) label(k5 = 0) brief

probit: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.6055   [ 0.5563,    0.6547]
Pr(y=NotInLF|x):    0.3945   [ 0.3453,    0.4437]

. estadd prvalue, x(k5=1 wc=0) label(k5 = 1) brief

probit: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.2719   [ 0.2017,    0.3421]
Pr(y=NotInLF|x):    0.7281   [ 0.6579,    0.7983]

updated matrices:

. estadd prvalue, x(k5=2 wc=0) label(k5 = 2) brief

probit: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.0692   [ 0.0140,    0.1244]
Pr(y=NotInLF|x):    0.9308   [ 0.8756,    0.9860]

updated matrices:

. estadd prvalue, x(k5=3 wc=0) label(k5 = 3) brief

probit: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.0092   [-0.0065,    0.0249]
Pr(y=NotInLF|x):    0.9908   [ 0.9751,    1.0065]

updated matrices:

scalars:
e(N) =  753

macros:
e(depvar) : "lfp"
e(model) : "probit"
e(properties) : "b"

matrices:
e(b) :  1 x 8      (predictions)
e(se) :  1 x 8      (standard errors)
e(LB) :  1 x 8      (lower CI bounds)
e(UB) :  1 x 8      (upper CI bounds)
e(Category) :  1 x 8      (outcome values)
e(X) :  7 x 4      (k5, k618, age, wc, hc, lwg, inc)

results stored as NoCollege

. estadd prvalue, x(k5=0 wc=1) label(k5 = 0) brief replace

probit: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.7752   [ 0.7070,    0.8434]
Pr(y=NotInLF|x):    0.2248   [ 0.1566,    0.2930]

. estadd prvalue, x(k5=1 wc=1) label(k5 = 1) brief

probit: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.4527   [ 0.3477,    0.5578]
Pr(y=NotInLF|x):    0.5473   [ 0.4422,    0.6523]

updated matrices:

. estadd prvalue, x(k5=2 wc=1) label(k5 = 2) brief

probit: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.1602   [ 0.0547,    0.2658]
Pr(y=NotInLF|x):    0.8398   [ 0.7342,    0.9453]

updated matrices:

. estadd prvalue, x(k5=3 wc=1) label(k5 = 3) brief

probit: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.0309   [-0.0135,    0.0752]
Pr(y=NotInLF|x):    0.9691   [ 0.9248,    1.0135]

updated matrices:

scalars:
e(N) =  753

macros:
e(depvar) : "lfp"
e(model) : "probit"
e(properties) : "b"

matrices:
e(b) :  1 x 8      (predictions)
e(se) :  1 x 8      (standard errors)
e(LB) :  1 x 8      (lower CI bounds)
e(UB) :  1 x 8      (upper CI bounds)
e(Category) :  1 x 8      (outcome values)
e(X) :  7 x 4      (k5, k618, age, wc, hc, lwg, inc)

results stored as College

. quietly prvalue, x(k5=0 wc=0) save

. estadd  prvalue, x(k5=0 wc=1) label(k5 = 0) brief diff replace

probit: Change in Predictions for lfp

Current     Saved    Change   95% CI for Change
Pr(y=inLF|x):       0.7752    0.6055    0.1696  [ 0.0839,   0.2554]
Pr(y=NotInLF|x):    0.2248    0.3945   -0.1696  [-0.2554,  -0.0839]

. quietly prvalue, x(k5=1 wc=0) save

. estadd  prvalue, x(k5=1 wc=1) label(k5 = 1) brief diff

probit: Change in Predictions for lfp

Current     Saved    Change   95% CI for Change
Pr(y=inLF|x):       0.4527    0.2719    0.1808  [ 0.0803,   0.2814]
Pr(y=NotInLF|x):    0.5473    0.7281   -0.1808  [-0.2814,  -0.0803]

updated matrices:

. quietly prvalue, x(k5=2 wc=0) save

. estadd  prvalue, x(k5=2 wc=1) label(k5 = 2) brief diff

probit: Change in Predictions for lfp

Current     Saved    Change   95% CI for Change
Pr(y=inLF|x):       0.1602    0.0692    0.0910  [ 0.0217,   0.1604]
Pr(y=NotInLF|x):    0.8398    0.9308   -0.0910  [-0.1604,  -0.0217]

updated matrices:

. quietly prvalue, x(k5=3 wc=0) save

. estadd  prvalue, x(k5=3 wc=1) label(k5 = 3) brief diff

probit: Change in Predictions for lfp

Current     Saved    Change   95% CI for Change
Pr(y=inLF|x):       0.0309    0.0092    0.0216  [-0.0090,   0.0523]
Pr(y=NotInLF|x):    0.9691    0.9908   -0.0216  [-0.0523,   0.0090]

updated matrices:

scalars:
e(N) =  753

macros:
e(depvar) : "lfp"
e(model) : "probit"
e(properties) : "b"

matrices:
e(b) :  1 x 8      (predictions)
e(se) :  1 x 8      (standard errors)
e(LB) :  1 x 8      (lower CI bounds)
e(UB) :  1 x 8      (upper CI bounds)
e(Category) :  1 x 8      (outcome values)
e(X) :  7 x 4      (k5, k618, age, wc, hc, lwg, inc)

results stored as Difference

. esttab, se nostar nonumber noobs mtitles ///
>     keep(inLF:) eqlabels(none)

---------------------------------------------------
NoCollege      College   Difference
---------------------------------------------------
k5 = 0              0.606        0.775        0.170
(0.0251)     (0.0348)     (0.0437)

k5 = 1              0.272        0.453        0.181
(0.0358)     (0.0536)     (0.0513)

k5 = 2             0.0692        0.160       0.0910
(0.0282)     (0.0539)     (0.0354)

k5 = 3            0.00922       0.0309       0.0216
(0.00800)     (0.0226)     (0.0157)
---------------------------------------------------
Standard errors in parentheses

. eststo clear
[do-file]
```

## Complementary log-log regression

### cloglog and fitstat/listcoef

```. spex binlfp2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/binlfp2.dta", clear

. quietly cloglog lfp k5 k618 age wc hc lwg inc, nolog

Measures of Fit for cloglog of lfp

Log-Lik Intercept Only:       -514.873   Log-Lik Full Model:           -448.471
D(745):                        896.943   LR(7):                         132.804
Prob > LR:                       0.000
ML (Cox-Snell) R2:               0.162   Cragg-Uhler(Nagelkerke) R2:      0.217
Efron's R2:                      0.160
Count R2:                        0.687   Adj Count R2:                    0.274
AIC:                             1.212   AIC*n:                         912.943
BIC:                         -4037.986   BIC':                          -86.435
BIC used by Stata:             949.935   AIC used by Stata:             912.943

e(dev) =  896.9429
e(dev_df) =  745
e(lrx2) =  132.80351
e(lrx2_df) =  7
e(lrx2_p) =  1.631e-25
e(r2_mf) =  .1289672
e(r2_ml) =  .16168879
e(r2_cu) =  .21695524
e(r2_ef) =  .15960051
e(r2_ct) =  .68658699
e(aic0) =  1.2124076
e(aic_n) =  912.9429
e(bic0) =  -4037.9857
e(bic_p) =  -86.435051
e(statabic) =  949.93542
e(stataaic) =  912.9429
e(n_rhs) =  7
e(n_parm) =  8

cloglog (N=753): Unstandardized and Standardized Estimates

Observed SD: .49562951

-------------------------------------------------------------
lfp |      b         z     P>|z|    bStdX      SDofX
-------------+-----------------------------------------------
k5 |  -1.00288   -7.101   0.000  -0.5255     0.5240
k618 |  -0.05225   -1.197   0.231  -0.0690     1.3199
age |  -0.04036   -5.047   0.000  -0.3258     8.0726
wc |   0.41893    2.877   0.004   0.1885     0.4500
hc |   0.05546    0.408   0.683   0.0271     0.4885
lwg |   0.58236    4.781   0.000   0.3422     0.5876
inc |  -0.02493   -4.157   0.000  -0.2900    11.6348
-------------------------------------------------------------

e(b_xs) :  1 x 7      (bStdX)
e(b_sdx) :  1 x 7      (SDofX)

. esttab, cell("b b_xs b_sdx") scalars(r2_mf r2_mfadj r2_ml r2_cu)

---------------------------------------------------
(1)
lfp
b         b_xs        b_sdx
---------------------------------------------------
lfp
k5              -1.002878     -.525467      .523959
k618            -.0522477    -.0689604     1.319874
age             -.0403616    -.3258222     8.072574
wc               .4189326     .1885404     .4500494
hc               .0554553     .0270882     .4884694
lwg              .5823638     .3421716     .5875564
inc             -.0249275    -.2900264      11.6348
_cons            1.554071
---------------------------------------------------
N                     753
r2_mf               0.129
r2_ml               0.162
r2_cu               0.217
---------------------------------------------------
[do-file]
```

### cloglog and prvalue

```. spex binlfp2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/binlfp2.dta", clear

. quietly cloglog lfp k5 k618 age wc hc lwg inc, nolog

. estadd prvalue, x(age=35 k5=2 wc=0 hc=0 inc=15) ///
>     label(family type 1) brief

cloglog: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.1716   [ 0.0931,    0.2500]
Pr(y=NotInLF|x):    0.8284   [ 0.7500,    0.9069]

. estadd prvalue, x(age=50 k5=0 k618=0 wc=1 hc=1) ///
>     label(family type 2) brief

cloglog: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.6862   [ 0.5920,    0.7803]
Pr(y=NotInLF|x):    0.3138   [ 0.2197,    0.4080]

updated matrices:

. estadd prvalue, label(average family) brief

cloglog: Predictions for lfp

95% Conf. Interval
Pr(y=inLF|x):       0.5608   [ 0.5225,    0.5991]
Pr(y=NotInLF|x):    0.4392   [ 0.4009,    0.4775]

updated matrices:

scalars:
e(N) =  753

macros:
e(depvar) : "lfp"
e(model) : "cloglog"
e(properties) : "b"

matrices:
e(b) :  1 x 6      (predictions)
e(se) :  1 x 6      (standard errors)
e(LB) :  1 x 6      (lower CI bounds)
e(UB) :  1 x 6      (upper CI bounds)
e(Category) :  1 x 6      (outcome values)
e(X) :  7 x 3      (k5, k618, age, wc, hc, lwg, inc)

. esttab, ci wide nostar ///
>     keep(inLF:) eqlabels(none) varwidth(15)

---------------------------------------------------
(1)
lfp
---------------------------------------------------
family type 1          0.172         [0.0931,0.250]
family type 2          0.686          [0.592,0.780]
average family         0.561          [0.522,0.599]
---------------------------------------------------
N                        753
---------------------------------------------------
95% confidence intervals in brackets
[do-file]
```

## Ordered logit/probit

### ologit and brant

```. spex ordwarm2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/ordwarm2.dta", clear

. quietly ologit warm yr89 male white age ed prst

Brant Test of Parallel Regression Assumption

Variable |      chi2   p>chi2    df
-------------+--------------------------
All |     49.18    0.000    12
-------------+--------------------------
yr89 |     13.01    0.001     2
male |     22.24    0.000     2
white |      1.27    0.531     2
age |      7.38    0.025     2
ed |      4.31    0.116     2
prst |      4.33    0.115     2
----------------------------------------

A significant test statistic provides evidence that the parallel
regression assumption has been violated.

e(brant_chi2) =  49.181219
e(brant_df) =  12
e(brant_p) =  1.944e-06

e(brant) :  2 x 6      (chi2, p>chi2)

. esttab, cell("b t brant[chi2] brant[p>chi2]") ///
>     scalars(brant_chi2 brant_df brant_p) ///
>     eqlabels(none)

----------------------------------------------------------------
(1)
warm
b            t         chi2       p>chi2
----------------------------------------------------------------
yr89             .5239025     6.557074     13.01311     .0014936
male            -.7332997    -9.343462      22.2379     .0000148
white           -.3911595    -3.304249     1.267856      .530504
age             -.0216655    -8.777624     7.383264     .0249313
ed               .0671728      4.20488     4.310353     .1158828
prst             .0060727     1.844179     4.331991     .1146358
cut1            -2.465362    -10.31909
cut2             -.630904    -2.704081
cut3             1.261854     5.392126
----------------------------------------------------------------
N                    2293
brant_chi2          49.18
brant_df               12
brant_p        0.00000194
----------------------------------------------------------------
[do-file]
```

### Ordered logit/probit and fitstat

```. spex ordwarm2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/ordwarm2.dta", clear

. quietly ologit warm yr89 male white age ed prst, nolog

Measures of Fit for ologit of warm

Log-Lik Intercept Only:      -2995.770   Log-Lik Full Model:          -2844.912
D(2284):                      5689.825   LR(6):                         301.716
Prob > LR:                       0.000
ML (Cox-Snell) R2:               0.123   Cragg-Uhler(Nagelkerke) R2:      0.133
McKelvey & Zavoina's R2:         0.127
Variance of y*:                  3.768   Variance of error:               3.290
Count R2:                        0.432   Adj Count R2:                    0.093
AIC:                             2.489   AIC*n:                        5707.825
BIC:                        -11982.891   BIC':                         -255.291
BIC used by Stata:            5759.463   AIC used by Stata:            5707.825

e(dev) =  5689.8246
e(dev_df) =  2284
e(lrx2) =  301.71628
e(lrx2_df) =  6
e(lrx2_p) =  3.508e-62
e(r2_mf) =  .05035704
e(r2_ml) =  .12329214
e(r2_cu) =  .13304665
e(r2_mz) =  .12682954
e(v_ystar) =  3.7677272
e(v_error) =  3.2898681
e(r2_ct) =  .4317488
e(aic0) =  2.4892388
e(aic_n) =  5707.8246
e(bic0) =  -11982.891
e(bic_p) =  -255.29058
e(statabic) =  5759.4631
e(stataaic) =  5707.8246
e(n_rhs) =  6
e(n_parm) =  9

. eststo ologit

. quietly oprobit warm yr89 male white age ed prst, nolog

Measures of Fit for oprobit of warm

Log-Lik Intercept Only:      -2995.770   Log-Lik Full Model:          -2848.611
D(2284):                      5697.222   LR(6):                         294.319
Prob > LR:                       0.000
ML (Cox-Snell) R2:               0.120   Cragg-Uhler(Nagelkerke) R2:      0.130
McKelvey & Zavoina's R2:         0.136
Variance of y*:                  1.158   Variance of error:               1.000
Count R2:                        0.429   Adj Count R2:                    0.089
AIC:                             2.492   AIC*n:                        5715.222
BIC:                        -11975.494   BIC':                         -247.893
BIC used by Stata:            5766.861   AIC used by Stata:            5715.222

e(dev) =  5697.222
e(dev_df) =  2284
e(lrx2) =  294.31885
e(lrx2_df) =  6
e(lrx2_p) =  1.349e-60
e(r2_mf) =  .0491224
e(r2_ml) =  .12045923
e(r2_cu) =  .12998961
e(r2_mz) =  .1363472
e(v_ystar) =  1.1578727
e(v_error) =  1
e(r2_ct) =  .42913214
e(aic0) =  2.4924649
e(aic_n) =  5715.222
e(bic0) =  -11975.494
e(bic_p) =  -247.89316
e(statabic) =  5766.8605
e(stataaic) =  5715.222
e(n_rhs) =  6
e(n_parm) =  9

. eststo oprobit

. esttab, scalars(r2_mf r2_mfadj r2_ml r2_cu) wide eqlabels(none) mtitles

----------------------------------------------------------------------
(1)                          (2)
ologit                      oprobit
----------------------------------------------------------------------
yr89                0.524***       (6.56)        0.319***       (6.80)
male               -0.733***      (-9.34)       -0.417***      (-9.16)
white              -0.391***      (-3.30)       -0.227**       (-3.26)
age               -0.0217***      (-8.78)      -0.0122***      (-8.47)
ed                 0.0672***       (4.20)       0.0387***       (4.15)
prst              0.00607          (1.84)      0.00328          (1.71)
cut1               -2.465***     (-10.32)       -1.429***     (-10.29)
cut2               -0.631**       (-2.70)       -0.361**       (-2.63)
cut3                1.262***       (5.39)        0.768***       (5.60)
----------------------------------------------------------------------
N                    2293                         2293
r2_mf              0.0504                       0.0491
r2_ml               0.123                        0.120
r2_cu               0.133                        0.130
----------------------------------------------------------------------
t statistics in parentheses
* p<0.05, ** p<0.01, *** p<0.001

. eststo clear
[do-file]
```

### Ordered logit/probit and listcoef

```. spex ordwarm2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/ordwarm2.dta", clear

. quietly ologit warm yr89 male white age ed prst, nolog

ologit (N=2293): Unstandardized and Standardized Estimates

Observed SD: .9282156
Latent SD: 1.9410634

-------------------------------------------------------------------------------
warm |      b         z     P>|z|    bStdX    bStdY   bStdXY      SDofX
-------------+-----------------------------------------------------------------
yr89 |   0.52390    6.557   0.000   0.2566   0.2699   0.1322     0.4897
male |  -0.73330   -9.343   0.000  -0.3658  -0.3778  -0.1885     0.4989
white |  -0.39116   -3.304   0.001  -0.1287  -0.2015  -0.0663     0.3290
age |  -0.02167   -8.778   0.000  -0.3635  -0.0112  -0.1873    16.7790
ed |   0.06717    4.205   0.000   0.2123   0.0346   0.1094     3.1608
prst |   0.00607    1.844   0.065   0.0880   0.0031   0.0453    14.4923
-------------------------------------------------------------------------------

e(b_xs) :  1 x 6      (bStdX)
e(b_ys) :  1 x 6      (bStdY)
e(b_std) :  1 x 6      (bStdXY)
e(b_sdx) :  1 x 6      (SDofX)

. eststo ologit

. quietly oprobit warm yr89 male white age ed prst, nolog

oprobit (N=2293): Unstandardized and Standardized Estimates

Observed SD: .9282156
Latent SD: 1.0760449

-------------------------------------------------------------------------------
warm |      b         z     P>|z|    bStdX    bStdY   bStdXY      SDofX
-------------+-----------------------------------------------------------------
yr89 |   0.31881    6.805   0.000   0.1561   0.2963   0.1451     0.4897
male |  -0.41703   -9.156   0.000  -0.2080  -0.3876  -0.1933     0.4989
white |  -0.22650   -3.260   0.001  -0.0745  -0.2105  -0.0693     0.3290
age |  -0.01222   -8.471   0.000  -0.2051  -0.0114  -0.1906    16.7790
ed |   0.03872    4.153   0.000   0.1224   0.0360   0.1137     3.1608
prst |   0.00328    1.705   0.088   0.0476   0.0031   0.0442    14.4923
-------------------------------------------------------------------------------

e(b_xs) :  1 x 6      (bStdX)
e(b_ys) :  1 x 6      (bStdY)
e(b_std) :  1 x 6      (bStdXY)
e(b_sdx) :  1 x 6      (SDofX)

. eststo oprobit

. esttab, aux(b_std) nopar wide eqlabels(none) mtitles

----------------------------------------------------------------------
(1)                          (2)
ologit                      oprobit
----------------------------------------------------------------------
yr89                0.524***        0.132        0.319***        0.145
male               -0.733***       -0.188       -0.417***       -0.193
white              -0.391***      -0.0663       -0.227**       -0.0693
age               -0.0217***       -0.187      -0.0122***       -0.191
ed                 0.0672***        0.109       0.0387***        0.114
prst              0.00607          0.0453      0.00328          0.0442
cut1               -2.465***                    -1.429***
cut2               -0.631**                     -0.361**
cut3                1.262***                     0.768***
----------------------------------------------------------------------
N                    2293                         2293
----------------------------------------------------------------------
b_std in second column
* p<0.05, ** p<0.01, *** p<0.001

. eststo clear
[do-file]
```

### Ordered logit/probit and prchange

```. spex ordwarm2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/ordwarm2.dta", clear

. eststo ologit: quietly ologit warm yr89 male white age ed prst, nolog

. eststo oprobit: quietly oprobit warm yr89 male white age ed prst, nolog

. estadd prchange male age prst: *

. esttab, main(dc) nostar not mtitles

--------------------------------------
(1)          (2)
ologit      oprobit
--------------------------------------
Avg|Chg|
male               0.0896       0.0819
age                0.0447       0.0404
prst               0.0108      0.00938
--------------------------------------
1SD
male               0.0746       0.0810
age                0.0360       0.0390
prst             -0.00870     -0.00905
--------------------------------------
2D
male                0.105       0.0827
age                0.0533       0.0417
prst              -0.0130     -0.00972
--------------------------------------
3A
male              -0.0814      -0.0622
age               -0.0401      -0.0301
prst              0.00977      0.00702
--------------------------------------
4SA
male              -0.0979       -0.101
age               -0.0492      -0.0506
prst               0.0119       0.0117
--------------------------------------
N                    2293         2293
--------------------------------------
dc coefficients

. eststo clear
[do-file]
```

### Ordered logit/probit and prchange: selected outcome

```. spex ordwarm2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/ordwarm2.dta", clear

. quietly ologit warm yr89 male white age ed prst, nolog

. estadd prchange male age prst, outcome(2)

ologit: Changes in Probabilities for warm

Outcome: 2 (2D)

Min->Max        0->1       -+1/2      -+sd/2    MargEfct
male   .10462105   .10462105   .10556346   .05362016   .10812605
age    .1862759   .00289795   .00319454   .05328724   .00319461
prst  -.06301633  -.00080028  -.00089544  -.01297233  -.00089543

1SD         2D         3A        4SA
Pr(y|x)  .11125716  .32816544  .39936733  .16121005

yr89     male    white      age       ed     prst
x=  .398604  .464893  .876581  44.9355  12.2181  39.5853
sd_x=  .489718  .498875  .328989   16.779  3.16083  14.4923

e(predval) =  .32816544
e(outcome) =  2
e(delta) =  1
e(centered) =  1

e(dc) :  6 x 3      (main, Min->Max, 0->1, -+1/2, -+sd/2, Marg
> Efct)
e(pattern) :  1 x 3
e(X) :  4 x 6      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
sd change for continuous variables

. eststo ologit

. quietly oprobit warm yr89 male white age ed prst, nolog

. estadd prchange male age prst, outcome(2)

oprobit: Changes in Probabilities for warm

Outcome: 2 (2D)

Min->Max        0->1       -+1/2      -+sd/2    MargEfct
male   .08271328   .08271328   .08378038    .0423308   .08521085
age    .1476199   .00280122   .00249711   .04172876   .00249716
prst  -.04764727  -.00058544  -.00067082  -.00971937  -.00067081

1SD         2D         3A        4SA
Pr(y|x)  .11177309  .32895118  .39563131   .1636444

yr89     male    white      age       ed     prst
x=  .398604  .464893  .876581  44.9355  12.2181  39.5853
sd_x=  .489718  .498875  .328989   16.779  3.16083  14.4923

e(predval) =  .32895118
e(outcome) =  2
e(delta) =  1
e(centered) =  1

e(dc) :  6 x 3      (main, Min->Max, 0->1, -+1/2, -+sd/2, Marg
> Efct)
e(pattern) :  1 x 3
e(X) :  4 x 6      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
sd change for continuous variables

. eststo oprobit

. esttab, main(dc) nostar not stats(predval outcome) mtitles

--------------------------------------
(1)          (2)
ologit      oprobit
--------------------------------------
male                0.105       0.0827
age                0.0533       0.0417
prst              -0.0130     -0.00972
--------------------------------------
predval             0.328        0.329
outcome                 2            2
--------------------------------------
dc coefficients

. eststo clear
[do-file]
```

### ologit and prchange: split option

```. spex ordwarm2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/ordwarm2.dta", clear

. quietly ologit warm yr89 male white age ed prst, nolog

. estadd prchange male age prst, split

ologit: Changes in Probabilities for warm

male
Avg|Chg|         1SD          2D          3A         4SA
0->1   .08961766   .07461427   .10462105  -.08137083  -.09786447

age
Avg|Chg|         1SD          2D          3A         4SA
Min->Max   .18319855   .18012119    .1862759  -.17905769  -.18733941
-+1/2   .00266841   .00214228   .00319454  -.00240716  -.00292964
-+sd/2    .0446563   .03602537   .05328724   -.0401054   -.0492072
MargEfct   .00266844   .00214226   .00319461  -.00240723  -.00292964

prst
Avg|Chg|         1SD          2D          3A         4SA
Min->Max   .05186236  -.04070839  -.06301633   .04440692   .05931778
-+1/2   .00074795  -.00060046  -.00089544   .00067475   .00082116
-+sd/2   .01083777  -.00870322  -.01297233   .00977433    .0119012
MargEfct   .00074795  -.00060046  -.00089543   .00067473   .00082116

1SD         2D         3A        4SA
Pr(y|x)  .11125716  .32816544  .39936733  .16121005

yr89     male    white      age       ed     prst
x=  .398604  .464893  .876581  44.9355  12.2181  39.5853
sd_x=  .489718  .498875  .328989   16.779  3.16083  14.4923

e(predval) =  .11125716
e(outcome) =  1
e(delta) =  1
e(centered) =  1

e(dc) :  6 x 3      (main, Min->Max, 0->1, -+1/2, -+sd/2, Marg
> Efct)
e(pattern) :  1 x 3
e(X) :  4 x 6      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
sd change for continuous variables

results for outcome 1 stored as ologit_1
results for outcome 2 stored as ologit_2
results for outcome 3 stored as ologit_3
results for outcome 4 stored as ologit_4

. esttab, main(dc) nostar not stats(predval outcome) ///
>     mtitles nonumbers

----------------------------------------------------------------
1SD           2D           3A          4SA
----------------------------------------------------------------
male               0.0746        0.105      -0.0814      -0.0979
age                0.0360       0.0533      -0.0401      -0.0492
prst             -0.00870      -0.0130      0.00977       0.0119
----------------------------------------------------------------
predval             0.111        0.328        0.399        0.161
outcome                 1            2            3            4
----------------------------------------------------------------
dc coefficients

. eststo clear
[do-file]
```

### oprobit and prchange: split option

```. spex ordwarm2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/ordwarm2.dta", clear

. quietly oprobit warm yr89 male white age ed prst, nolog

. estadd prchange male age prst, split

oprobit: Changes in Probabilities for warm

male
Avg|Chg|         1SD          2D          3A         4SA
0->1   .08185343   .08099359   .08271328  -.06222743  -.10147941

age
Avg|Chg|         1SD          2D          3A         4SA
Min->Max   .16764789   .18767587    .1476199  -.14207253  -.19322326
-+1/2   .00241081   .00232452   .00249711  -.00180408  -.00301754
-+sd/2   .04038233   .03903589   .04172876  -.03013682  -.05062783
MargEfct   .00241084   .00232452   .00249716  -.00180413  -.00301755

prst
Avg|Chg|         1SD          2D          3A         4SA
Min->Max   .04505957  -.04247186  -.04764727   .03203639   .05808274
-+1/2   .00064762  -.00062443  -.00067082   .00048462   .00081059
-+sd/2   .00938461  -.00904983  -.00971937   .00702184   .01174738
MargEfct   .00064762  -.00062443  -.00067081   .00048464    .0008106

1SD         2D         3A        4SA
Pr(y|x)  .11177309  .32895118  .39563131   .1636444

yr89     male    white      age       ed     prst
x=  .398604  .464893  .876581  44.9355  12.2181  39.5853
sd_x=  .489718  .498875  .328989   16.779  3.16083  14.4923

e(predval) =  .11177309
e(outcome) =  1
e(delta) =  1
e(centered) =  1

e(dc) :  6 x 3      (main, Min->Max, 0->1, -+1/2, -+sd/2, Marg
> Efct)
e(pattern) :  1 x 3
e(X) :  4 x 6      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
sd change for continuous variables

results for outcome 1 stored as oprobit_1
results for outcome 2 stored as oprobit_2
results for outcome 3 stored as oprobit_3
results for outcome 4 stored as oprobit_4

. esttab, main(dc) nostar not stats(predval outcome) ///
>     mtitles nonumbers

----------------------------------------------------------------
1SD           2D           3A          4SA
----------------------------------------------------------------
male               0.0810       0.0827      -0.0622       -0.101
age                0.0390       0.0417      -0.0301      -0.0506
prst             -0.00905     -0.00972      0.00702       0.0117
----------------------------------------------------------------
predval             0.112        0.329        0.396        0.164
outcome                 1            2            3            4
----------------------------------------------------------------
dc coefficients

. eststo clear
[do-file]
```

### ologit and prvalue

```. spex ordwarm2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/ordwarm2.dta", clear

. quietly ologit warm yr89 male white age ed prst, nolog

. estadd prvalue, x(yr89=0 male=1 prst=20 age=64 ed=16) ///
>     brief label(type1)

ologit: Predictions for warm

95% Conf. Interval
Pr(y=1SD|x):     0.2317   [ 0.1776,    0.2857]
Pr(y=2D|x):      0.4221   [ 0.3942,    0.4500]
Pr(y=3A|x):      0.2723   [ 0.2249,    0.3198]
Pr(y=4SA|x):     0.0739   [ 0.0523,    0.0954]

. estadd prvalue, x(yr89=1 male=0 prst=80 age=30 ed=24) ///
>     brief label(type2)

ologit: Predictions for warm

95% Conf. Interval
Pr(y=1SD|x):     0.0164   [ 0.0106,    0.0222]
Pr(y=2D|x):      0.0781   [ 0.0554,    0.1008]
Pr(y=3A|x):      0.3147   [ 0.2636,    0.3658]
Pr(y=4SA|x):     0.5908   [ 0.5143,    0.6673]

updated matrices:

. estadd prvalue, x(yr89=0) brief label(type3)

ologit: Predictions for warm

95% Conf. Interval
Pr(y=1SD|x):     0.1336   [ 0.1176,    0.1496]
Pr(y=2D|x):      0.3577   [ 0.3348,    0.3806]
Pr(y=3A|x):      0.3737   [ 0.3517,    0.3957]
Pr(y=4SA|x):     0.1349   [ 0.1195,    0.1504]

updated matrices:

. estadd prvalue, x(yr89=1) brief label(type4)

ologit: Predictions for warm

95% Conf. Interval
Pr(y=1SD|x):     0.0837   [ 0.0711,    0.0963]
Pr(y=2D|x):      0.2802   [ 0.2571,    0.3032]
Pr(y=3A|x):      0.4277   [ 0.4046,    0.4507]
Pr(y=4SA|x):     0.2085   [ 0.1855,    0.2315]

updated matrices:

scalars:
e(N) =  2293

macros:
e(depvar) : "warm"
e(model) : "ologit"
e(properties) : "b"

matrices:
e(b) :  1 x 16     (predictions)
e(se) :  1 x 16     (standard errors)
e(LB) :  1 x 16     (lower CI bounds)
e(UB) :  1 x 16     (upper CI bounds)
e(Category) :  1 x 16     (outcome values)
e(X) :  6 x 4      (yr89, male, white, age, ed, prst)

. esttab, nostar unstack ///
>     coeflabels(type1 "old working class men 1977"   ///
>                type2 "young prestigious women 1989" ///
>                type3 "average individual 1977" ///
>                type4 "average individual 1989") ///
>     wrap varwidth(18)

----------------------------------------------------------------------
(1)
warm
1SD           2D           3A          4SA
----------------------------------------------------------------------
old working class         0.232        0.422        0.272       0.0739
men 1977                 (8.40)      (29.67)      (11.25)       (6.72)

young prestigious        0.0164       0.0781        0.315        0.591
women 1989               (5.56)       (6.74)      (12.07)      (15.13)

average individual        0.134        0.358        0.374        0.135
1977                    (16.37)      (30.57)      (33.30)      (17.09)

average individual       0.0837        0.280        0.428        0.208
1989                    (13.00)      (23.81)      (36.29)      (17.77)
----------------------------------------------------------------------
N                          2293
----------------------------------------------------------------------
t statistics in parentheses
[do-file]
```

### oprobit and prvalue

```. spex ordwarm2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/ordwarm2.dta", clear

. quietly oprobit warm yr89 male white age ed prst, nolog

. estadd prvalue, x(yr89=0 male=1 prst=20 age=64 ed=16) ///
>     brief label(type1)

oprobit: Predictions for warm

95% Conf. Interval
Pr(y=1SD|x):     0.2370   [ 0.1821,    0.2918]
Pr(y=2D|x):      0.4006   [ 0.3750,    0.4261]
Pr(y=3A|x):      0.2931   [ 0.2844,    0.3017]
Pr(y=4SA|x):     0.0693   [ 0.0450,    0.0936]

. estadd prvalue, x(yr89=1 male=0 prst=80 age=30 ed=24) ///
>     brief label(type2)

oprobit: Predictions for warm

95% Conf. Interval
Pr(y=1SD|x):     0.0088   [ 0.0040,    0.0136]
Pr(y=2D|x):      0.0870   [ 0.0754,    0.0985]
Pr(y=3A|x):      0.3338   [ 0.3083,    0.3593]
Pr(y=4SA|x):     0.5704   [ 0.4977,    0.6432]

updated matrices:

. estadd prvalue, x(yr89=0) brief label(type3)

oprobit: Predictions for warm

95% Conf. Interval
Pr(y=1SD|x):     0.1378   [ 0.1213,    0.1544]
Pr(y=2D|x):      0.3534   [ 0.3262,    0.3805]
Pr(y=3A|x):      0.3746   [ 0.3605,    0.3886]
Pr(y=4SA|x):     0.1342   [ 0.1182,    0.1502]

updated matrices:

. estadd prvalue, x(yr89=1) brief label(type4)

oprobit: Predictions for warm

95% Conf. Interval
Pr(y=1SD|x):     0.0794   [ 0.0660,    0.0929]
Pr(y=2D|x):      0.2872   [ 0.2615,    0.3128]
Pr(y=3A|x):      0.4180   [ 0.3990,    0.4370]
Pr(y=4SA|x):     0.2154   [ 0.1917,    0.2391]

updated matrices:

scalars:
e(N) =  2293

macros:
e(depvar) : "warm"
e(model) : "oprobit"
e(properties) : "b"

matrices:
e(b) :  1 x 16     (predictions)
e(se) :  1 x 16     (standard errors)
e(LB) :  1 x 16     (lower CI bounds)
e(UB) :  1 x 16     (upper CI bounds)
e(Category) :  1 x 16     (outcome values)
e(X) :  6 x 4      (yr89, male, white, age, ed, prst)

. esttab, nostar unstack ///
>     coeflabels(type1 "old working class men 1977"   ///
>                type2 "young prestigious women 1989" ///
>                type3 "average individual 1977" ///
>                type4 "average individual 1989") ///
>     wrap varwidth(18)

----------------------------------------------------------------------
(1)
warm
1SD           2D           3A          4SA
----------------------------------------------------------------------
old working class         0.237        0.401        0.293       0.0693
men 1977                 (8.47)      (30.74)      (66.40)       (5.59)

young prestigious       0.00879       0.0870        0.334        0.570
women 1989               (3.59)      (14.72)      (25.67)      (15.37)

average individual        0.138        0.353        0.375        0.134
1977                    (16.33)      (25.49)      (52.31)      (16.44)

average individual       0.0794        0.287        0.418        0.215
1989                    (11.57)      (21.95)      (43.16)      (17.83)
----------------------------------------------------------------------
N                          2293
----------------------------------------------------------------------
t statistics in parentheses
[do-file]
```

## Multinomial logit/probit

### Multinomial logit/probit and fitstat

```. spex nomocc2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/nomocc2.dta", clear

. quietly mlogit occ white ed exper, nolog

Measures of Fit for mlogit of occ

Log-Lik Intercept Only:       -509.844   Log-Lik Full Model:           -426.800
D(321):                        853.601   LR(12):                        166.087
Prob > LR:                       0.000
ML (Cox-Snell) R2:               0.389   Cragg-Uhler(Nagelkerke) R2:      0.409
Count R2:                        0.501   Adj Count R2:                    0.253
AIC:                             2.628   AIC*n:                         885.601
BIC:                         -1014.646   BIC':                          -96.246
BIC used by Stata:             946.722   AIC used by Stata:             885.601

e(dev) =  853.60095
e(dev_df) =  321
e(lrx2) =  166.08716
e(lrx2_df) =  12
e(lrx2_p) =  3.010e-29
e(r2_mf) =  .16288035
e(r2_ml) =  .38911114
e(r2_cu) =  .40895353
e(r2_ct) =  .50148368
e(aic0) =  2.627896
e(aic_n) =  885.60095
e(bic0) =  -1014.6457
e(bic_p) =  -96.246162
e(statabic) =  946.72228
e(stataaic) =  885.60095
e(n_rhs) =  3
e(n_parm) =  16

. eststo mlogit

. quietly mprobit occ white ed exper, nolog

Measures of Fit for mprobit of occ

Log-Lik Full Model:           -429.319   D(321):                        858.637
Wald X2(12):                   105.614   Prob > X2:                       0.000
Count R2:                        0.496   Adj Count R2:                    0.244
AIC:                             2.643   AIC*n:                         890.637
BIC:                         -1009.609   BIC':                          -35.773
BIC used by Stata:             951.758   AIC used by Stata:             890.637

e(dev) =  858.63712
e(dev_df) =  321
e(lrx2) =  105.61418
e(lrx2_df) =  12
e(lrx2_p) =  4.393e-17
e(r2_ct) =  .49554896
e(aic0) =  2.6428401
e(aic_n) =  890.63712
e(bic0) =  -1009.6095
e(bic_p) =  -35.773189
e(statabic) =  951.75845
e(stataaic) =  890.63712
e(n_rhs) =  12
e(n_parm) =  16

. eststo mprobit

. esttab, wide scalars(r2_ct r2_ctadj aic0 aic_n) mtitles

----------------------------------------------------------------------
(1)                          (2)
mlogit                      mprobit
----------------------------------------------------------------------
Menial
white              -1.774*        (-2.35)       -1.145*        (-2.28)
ed                 -0.779***      (-6.79)       -0.509***      (-7.29)
exper             -0.0357*        (-1.98)      -0.0235*        (-2.14)
_cons               11.52***       (6.23)        7.462***       (6.51)
----------------------------------------------------------------------
BlueCol
white              -0.538         (-0.67)       -0.392         (-0.76)
ed                 -0.878***      (-8.74)       -0.585***      (-9.28)
exper             -0.0309*        (-2.15)      -0.0226*        (-2.30)
_cons               12.26***       (7.35)        8.189***       (7.66)
----------------------------------------------------------------------
Craft
white              -1.302*        (-2.01)       -0.890         (-1.95)
ed                 -0.685***      (-7.67)       -0.472***      (-8.15)
exper            -0.00797         (-0.63)     -0.00778         (-0.86)
_cons               10.43***       (6.87)        7.140***       (7.21)
----------------------------------------------------------------------
WhiteCol
white              -0.203         (-0.23)       -0.143         (-0.26)
ed                 -0.426***      (-4.62)       -0.304***      (-5.27)
exper            -0.00106         (-0.07)     -0.00390         (-0.41)
_cons               5.280**        (3.14)        3.765***       (3.63)
----------------------------------------------------------------------
N                     337                          337
r2_ct               0.501                        0.496
aic0                2.628                        2.643
aic_n               885.6                        890.6
----------------------------------------------------------------------
t statistics in parentheses
* p<0.05, ** p<0.01, *** p<0.001

. eststo clear
[do-file]
```

### Multinomial logit/probit and listcoef

```. spex nomocc2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/nomocc2.dta", clear

. quietly mlogit occ white ed exper, nolog

mlogit (N=337): Factor Change in the Odds of occ

Variable: white (sd=.27642268)

Odds comparing    |
Alternative 1     |
to Alternative 2  |      b         z     P>|z|     e^b   e^bStdX
------------------+---------------------------------------------
BlueCol -Menial   |   1.23650    1.707   0.088   3.4436   1.4075
Craft   -BlueCol  |  -0.76416   -1.208   0.227   0.4657   0.8096
WhiteCol-Craft    |   1.09904    1.343   0.179   3.0013   1.3550
Prof    -WhiteCol |   0.20292    0.233   0.815   1.2250   1.0577
----------------------------------------------------------------

Variable: ed (sd=2.9464271)

Odds comparing    |
Alternative 1     |
to Alternative 2  |      b         z     P>|z|     e^b   e^bStdX
------------------+---------------------------------------------
BlueCol -Menial   |  -0.09942   -0.972   0.331   0.9054   0.7461
Craft   -BlueCol  |   0.19324    2.494   0.013   1.2132   1.7671
WhiteCol-Craft    |   0.25934    2.773   0.006   1.2961   2.1471
Prof    -WhiteCol |   0.42569    4.616   0.000   1.5307   3.5053
----------------------------------------------------------------

Variable: exper (sd=13.959364)

Odds comparing    |
Alternative 1     |
to Alternative 2  |      b         z     P>|z|     e^b   e^bStdX
------------------+---------------------------------------------
BlueCol -Menial   |   0.00472    0.271   0.786   1.0047   1.0681
Craft   -BlueCol  |   0.02296    1.829   0.067   1.0232   1.3779
WhiteCol-Craft    |   0.00691    0.495   0.621   1.0069   1.1013
Prof    -WhiteCol |   0.00106    0.073   0.941   1.0011   1.0148
----------------------------------------------------------------

e(b_raw) :  1 x 12     (b)
e(b_se) :  1 x 12     (se)
e(b_z) :  1 x 12     (z)
e(b_p) :  1 x 12     (P>|z|)
e(b_fact) :  1 x 12     (e^b)
e(b_facts) :  1 x 12     (e^bStdX)
e(b_sdx) :  1 x 12     (SDofX)

. esttab , cell("b_raw b_fact b_facts b_sdx") varwidth(14)

------------------------------------------------------------------
(1)
occ
b_raw       b_fact      b_facts        b_sdx
------------------------------------------------------------------
BlueCol-Menial
white              1.236504     3.443553     1.407476     .2764227
ed                -.0994247     .9053581     .7460612     2.946427
exper              .0047212     1.004732     1.068126     13.95936
------------------------------------------------------------------
Craft-BlueCol
white             -.7641602     .4657249     .8095869     .2764227
ed                 .1932401     1.213174      1.76715     2.946427
exper              .0229626     1.023228     1.377875     13.95936
------------------------------------------------------------------
WhiteCol-Craft
white              1.099042     3.001288     1.354998     .2764227
ed                 .2593423     1.296077     2.147132     2.946427
exper              .0069121     1.006936     1.101296     13.95936
------------------------------------------------------------------
Prof-WhiteCol
white              .2029212     1.224976     1.057695     .2764227
ed                 .4256943     1.530653     3.505304     2.946427
exper               .001055     1.001056     1.014837     13.95936
------------------------------------------------------------------
N                       337
------------------------------------------------------------------

. quietly mprobit occ white ed exper, nolog

mprobit (N=337): Unstandardized and Standardized Estimates for occ

Variable: white (sd=.27642268)

Comparing     |
Group 1 vs Group 2|      b         z     P>|z|     bStdX
------------------+-------------------------------------
BlueCol -Menial   |   0.75269    1.550   0.121   0.20806
Craft   -BlueCol  |  -0.49814   -1.129   0.259  -0.13770
WhiteCol-Craft    |   0.74694    1.449   0.147   0.20647
Prof    -WhiteCol |   0.14342    0.259   0.795   0.03964
--------------------------------------------------------

Variable: ed (sd=2.9464271)

Comparing     |
Group 1 vs Group 2|      b         z     P>|z|     bStdX
------------------+-------------------------------------
BlueCol -Menial   |  -0.07507   -1.173   0.241  -0.22120
Craft   -BlueCol  |   0.11268    2.094   0.036   0.33202
WhiteCol-Craft    |   0.16803    2.868   0.004   0.49509
Prof    -WhiteCol |   0.30386    5.273   0.000   0.89529
--------------------------------------------------------

Variable: exper (sd=13.959364)

Comparing     |
Group 1 vs Group 2|      b         z     P>|z|     bStdX
------------------+-------------------------------------
BlueCol -Menial   |   0.00087    0.081   0.936   0.01219
Craft   -BlueCol  |   0.01481    1.622   0.105   0.20671
WhiteCol-Craft    |   0.00388    0.412   0.680   0.05414
Prof    -WhiteCol |   0.00390    0.409   0.683   0.05450
--------------------------------------------------------

e(b_raw) :  1 x 12     (b)
e(b_se) :  1 x 12     (se)
e(b_z) :  1 x 12     (z)
e(b_p) :  1 x 12     (P>|z|)
e(b_xs) :  1 x 12     (bStdX)
e(b_sdx) :  1 x 12     (SDofX)

. esttab , cell("b_raw b_xs b_sdx") varwidth(14)

-----------------------------------------------------
(1)
occ
b_raw         b_xs        b_sdx
-----------------------------------------------------
BlueCol-Menial
white              .7526853     .2080593     .2764227
ed                -.0750737    -.2211993     2.946427
exper              .0008733     .0121908     13.95936
-----------------------------------------------------
Craft-BlueCol
white             -.4981353    -.1376959     .2764227
ed                 .1126849     .3320178     2.946427
exper              .0148078     .2067081     13.95936
-----------------------------------------------------
WhiteCol-Craft
white              .7469406     .2064713     .2764227
ed                 .1680308     .4950905     2.946427
exper              .0038781     .0541364     13.95936
-----------------------------------------------------
Prof-WhiteCol
white              .1434167     .0396436     .2764227
ed                 .3038566     .8952914     2.946427
exper              .0039043     .0545014     13.95936
-----------------------------------------------------
N                       337
-----------------------------------------------------
[do-file]
```

### mlogit and mlogtest

```. spex nomocc2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/nomocc2.dta", clear

. quietly mlogit occ white ed exper, nolog

. estadd mlogtest, wald lr set(white exper)

**** Likelihood-ratio tests for independent variables (N=337)

Ho: All coefficients associated with given variable(s) are 0.

|       chi2   df   P>chi2
-------------+-------------------------
white |      8.095    4    0.088
ed |    156.937    4    0.000
exper |      8.561    4    0.073
-------------+-------------------------
set_1: |     16.452    8    0.036
white |
exper |
---------------------------------------

**** Wald tests for independent variables (N=337)

Ho: All coefficients associated with given variable(s) are 0.

|       chi2   df   P>chi2
-------------+-------------------------
white |      8.149    4    0.086
ed |     84.968    4    0.000
exper |      7.995    4    0.092
-------------+-------------------------
set_1: |     15.773    8    0.046
white |
exper |
---------------------------------------

e(wald_set1_chi2) =  15.773146
e(wald_set1_df) =  8
e(wald_set1_p) =  .0457446
e(lrtest_set1_chi2) =  16.451934
e(lrtest_set1_df) =  8
e(lrtest_set1_p) =  .03634985

e(wald) :  3 x 3      (chi2, df, p)
e(lrtest) :  3 x 3      (chi2, df, p)

. estout, cell("wald[chi2] wald[df] wald[p]")       ///
>     stat(wald_set1_chi2 wald_set1_df wald_set1_p, ///
>         layout("@ @ @") label("white&exper"))     ///
>     mlabel(none)

---------------------------------------------------
chi2           df            p
---------------------------------------------------
white            8.149203            4     .0862631
ed               84.96817            4     1.54e-17
exper            7.994939            4     .0917638
---------------------------------------------------
white&exper      15.77315            8     .0457446
---------------------------------------------------

. estout, cell("lrtest[chi2] lrtest[df] lrtest[p]")       ///
>     stat(lrtest_set1_chi2 lrtest_set1_df lrtest_set1_p, ///
>         layout("@ @ @") label("white&exper"))           ///
>     mlabel(none)

---------------------------------------------------
chi2           df            p
---------------------------------------------------
white            8.095408            4     .0881451
ed               156.9372            4     6.63e-33
exper            8.560953            4      .073061
---------------------------------------------------
white&exper      16.45193            8     .0363498
---------------------------------------------------

. estout, cell(" wald[p](label(P>Wald) fmt(4)) lrtest[p](label(P>LR))")   ///
>     stat(wald_set1_p lrtest_set1_p, layout("@ @") label("white&exper")) ///
>     mlabel(none)

--------------------------------------
P>Wald         P>LR
--------------------------------------
white              0.0863       0.0881
ed                 0.0000       0.0000
exper              0.0918       0.0731
--------------------------------------
white&exper        0.0457       0.0363
--------------------------------------
[do-file]
```

### Multinomial logit/probit and prchange

```. spex nomocc2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/nomocc2.dta", clear

. quietly mlogit occ white ed exper, nolog

mlogit: Changes in Probabilities for occ

white
Avg|Chg|      Menial     BlueCol       Craft    WhiteCol
0->1   .11623582  -.13085523   .04981799  -.15973434   .07971004

Prof
0->1    .1610615

ed
Avg|Chg|      Menial     BlueCol       Craft    WhiteCol
Min->Max   .39242268  -.13017954  -.70077323  -.15010394   .02425591
-+1/2   .05855425  -.02559762  -.06831616  -.05247185   .01250795
-+sd/2    .1640657  -.07129153  -.19310513  -.14576758   .03064777
MargEfct   .05894859  -.02579097  -.06870635  -.05287415   .01282041

Prof
Min->Max   .95680079
-+1/2   .13387768
-+sd/2   .37951647
MargEfct   .13455107

exper
Avg|Chg|      Menial     BlueCol       Craft    WhiteCol
Min->Max   .12193559  -.11536534  -.18947365   .03115708   .09478889
-+1/2   .00233425  -.00226997  -.00356567   .00105992    .0016944
-+sd/2   .03253578  -.03167491  -.04966453   .01479983   .02360725
MargEfct   .00233427  -.00226997  -.00356571   .00105992   .00169442

Prof
Min->Max   .17889298
-+1/2   .00308132
-+sd/2   .04293236
MargEfct   .00308134

Menial    BlueCol      Craft   WhiteCol       Prof
Pr(y|x)  .09426806  .18419114  .29411051  .16112968  .26630062

white       ed    exper
x=  .916914   13.095  20.5015
sd_x=  .276423  2.94643  13.9594

e(predval1) =  .09426806
e(predval2) =  .18419114
e(predval3) =  .29411051
e(predval4) =  .16112968
e(predval5) =  .26630062
e(delta) =  1
e(centered) =  1

e(dc) :  6 x 18     (main, Min->Max, 0->1, -+1/2, -+sd/2, Marg
> Efct)
e(pattern) :  1 x 18
e(X) :  4 x 3      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
sd change for continuous variables

. eststo mlogit

. quietly mprobit occ white ed exper, nolog

mprobit: Changes in Probabilities for occ

white
Avg|Chg|      Menial     BlueCol       Craft    WhiteCol
0->1   .11142595  -.13099539   .03923495  -.14756948   .07652746

Prof
0->1   .16280247

ed
Avg|Chg|      Menial     BlueCol       Craft    WhiteCol
Min->Max   .39433155  -.13480758  -.63618958  -.21483173   .03136472
-+1/2   .05591886  -.02555373  -.06636748  -.04787594   .00948766
-+sd/2    .1577241   -.0714798  -.18783711  -.13499337   .02528359

Prof
Min->Max   .95446413
-+1/2   .13030948
-+sd/2   .36902665

exper
Avg|Chg|      Menial     BlueCol       Craft    WhiteCol
Min->Max     .123281  -.11218768  -.19601482   .01516485   .07135144
-+1/2   .00229492  -.00215125  -.00358605   .00069633   .00136708
-+sd/2   .03197956  -.02998788  -.04996105   .00971583   .01904152

Prof
Min->Max    .2216862
-+1/2   .00367388
-+sd/2   .05119154

Menial    BlueCol      Craft   WhiteCol       Prof
Pr(y|x)  .09325961  .18944861  .27852002  .15457167   .2842001

white       ed    exper
x=  .916914   13.095  20.5015
sd_x=  .276423  2.94643  13.9594

e(predval1) =  .09325961
e(predval2) =  .18944861
e(predval3) =  .27852002
e(predval4) =  .15457167
e(predval5) =  .2842001
e(delta) =  1
e(centered) =  1

e(dc) :  5 x 18     (main, Min->Max, 0->1, -+1/2, -+sd/2)
e(pattern) :  1 x 18
e(X) :  4 x 3      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
sd change for continuous variables

. eststo mprobit

. esttab mlogit, main(dc) nostar not unstack compress

----------------------------------------------------------------------
(1)
occ
Avg|Chg|    Menial   BlueCol     Craft  WhiteCol      Prof
----------------------------------------------------------------------
white          0.116    -0.131    0.0498    -0.160    0.0797     0.161
ed             0.164   -0.0713    -0.193    -0.146    0.0306     0.380
exper         0.0325   -0.0317   -0.0497    0.0148    0.0236    0.0429
----------------------------------------------------------------------
N                337
----------------------------------------------------------------------
dc coefficients

. esttab mprobit, main(dc) nostar not unstack compress

----------------------------------------------------------------------
(1)
occ
Avg|Chg|    Menial   BlueCol     Craft  WhiteCol      Prof
----------------------------------------------------------------------
white          0.111    -0.131    0.0392    -0.148    0.0765     0.163
ed             0.158   -0.0715    -0.188    -0.135    0.0253     0.369
exper         0.0320   -0.0300   -0.0500   0.00972    0.0190    0.0512
----------------------------------------------------------------------
N                337
----------------------------------------------------------------------
dc coefficients

. esttab, main(dc) nostar not mtitles

--------------------------------------
(1)          (2)
mlogit      mprobit
--------------------------------------
Avg|Chg|
white               0.116        0.111
ed                  0.164        0.158
exper              0.0325       0.0320
--------------------------------------
Menial
white              -0.131       -0.131
ed                -0.0713      -0.0715
exper             -0.0317      -0.0300
--------------------------------------
BlueCol
white              0.0498       0.0392
ed                 -0.193       -0.188
exper             -0.0497      -0.0500
--------------------------------------
Craft
white              -0.160       -0.148
ed                 -0.146       -0.135
exper              0.0148      0.00972
--------------------------------------
WhiteCol
white              0.0797       0.0765
ed                 0.0306       0.0253
exper              0.0236       0.0190
--------------------------------------
Prof
white               0.161        0.163
ed                  0.380        0.369
exper              0.0429       0.0512
--------------------------------------
N                     337          337
--------------------------------------
dc coefficients

. eststo clear
[do-file]
```

### Multinomial logit/probit and prchange: selected outcome

```. spex nomocc2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/nomocc2.dta", clear

. quietly mlogit occ white ed exper, nolog

mlogit: Changes in Probabilities for occ

Outcome: 3 (Craft)

Min->Max        0->1       -+1/2      -+sd/2    MargEfct
white  -.15973434  -.15973434  -.17549489  -.05025825  -.18235627
ed  -.15010394   .01737602  -.05247185  -.14576758  -.05287415
exper   .03115708     .001993   .00105992   .01479983   .00105992

Menial    BlueCol      Craft   WhiteCol       Prof
Pr(y|x)  .09426806  .18419114  .29411051  .16112968  .26630062

white       ed    exper
x=  .916914   13.095  20.5015
sd_x=  .276423  2.94643  13.9594

e(predval) =  .29411051
e(outcome) =  3
e(delta) =  1
e(centered) =  1

e(dc) :  6 x 3      (main, Min->Max, 0->1, -+1/2, -+sd/2, Marg
> Efct)
e(pattern) :  1 x 3
e(X) :  4 x 3      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
sd change for continuous variables

. eststo mlogit

. quietly mprobit occ white ed exper, nolog

mprobit: Changes in Probabilities for occ

Outcome: 3 (Craft)

Min->Max        0->1       -+1/2      -+sd/2
white  -.14756948  -.14756948  -.15760018  -.04463357
ed  -.21483173   .01855293  -.04787594  -.13499337
exper   .01516485   .00139609   .00069633   .00971583

Menial    BlueCol      Craft   WhiteCol       Prof
Pr(y|x)  .09325961  .18944861  .27852002  .15457167   .2842001

white       ed    exper
x=  .916914   13.095  20.5015
sd_x=  .276423  2.94643  13.9594

e(predval) =  .27852002
e(outcome) =  3
e(delta) =  1
e(centered) =  1

e(dc) :  5 x 3      (main, Min->Max, 0->1, -+1/2, -+sd/2)
e(pattern) :  1 x 3
e(X) :  4 x 3      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
sd change for continuous variables

. eststo mprobit

. esttab, aux(dc) wide nopar stats(predval outcome) keep(Craft:) mtitles

----------------------------------------------------------------------
(1)                          (2)
mlogit                      mprobit
----------------------------------------------------------------------
Craft
white              -1.302*         -0.160       -0.890          -0.148
ed                 -0.685***       -0.146       -0.472***       -0.135
exper            -0.00797          0.0148     -0.00778         0.00972
_cons               10.43***                     7.140***
----------------------------------------------------------------------
predval             0.294                        0.279
outcome                 3                            3
----------------------------------------------------------------------
dc in second column
* p<0.05, ** p<0.01, *** p<0.001

. eststo clear
[do-file]
```

### mlogit and prchange: split option

```. spex nomocc2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/nomocc2.dta", clear

. quietly mlogit occ white ed exper, nolog

mlogit: Changes in Probabilities for occ

white
Avg|Chg|      Menial     BlueCol       Craft    WhiteCol
0->1   .11623582  -.13085523   .04981799  -.15973434   .07971004

Prof
0->1    .1610615

ed
Avg|Chg|      Menial     BlueCol       Craft    WhiteCol
Min->Max   .39242268  -.13017954  -.70077323  -.15010394   .02425591
-+1/2   .05855425  -.02559762  -.06831616  -.05247185   .01250795
-+sd/2    .1640657  -.07129153  -.19310513  -.14576758   .03064777
MargEfct   .05894859  -.02579097  -.06870635  -.05287415   .01282041

Prof
Min->Max   .95680079
-+1/2   .13387768
-+sd/2   .37951647
MargEfct   .13455107

exper
Avg|Chg|      Menial     BlueCol       Craft    WhiteCol
Min->Max   .12193559  -.11536534  -.18947365   .03115708   .09478889
-+1/2   .00233425  -.00226997  -.00356567   .00105992    .0016944
-+sd/2   .03253578  -.03167491  -.04966453   .01479983   .02360725
MargEfct   .00233427  -.00226997  -.00356571   .00105992   .00169442

Prof
Min->Max   .17889298
-+1/2   .00308132
-+sd/2   .04293236
MargEfct   .00308134

Menial    BlueCol      Craft   WhiteCol       Prof
Pr(y|x)  .09426806  .18419114  .29411051  .16112968  .26630062

white       ed    exper
x=  .916914   13.095  20.5015
sd_x=  .276423  2.94643  13.9594

e(predval) =  .09426806
e(outcome) =  1
e(delta) =  1
e(centered) =  1

e(dc) :  6 x 3      (main, Min->Max, 0->1, -+1/2, -+sd/2, Marg
> Efct)
e(pattern) :  1 x 3
e(X) :  4 x 3      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
sd change for continuous variables

results for outcome 1 stored as mlogit_1
results for outcome 2 stored as mlogit_2
results for outcome 3 stored as mlogit_3
results for outcome 4 stored as mlogit_4
results for outcome 5 stored as mlogit_5

. esttab, main(dc) nostar not scalars(predval outcome) noobs mtitles

-----------------------------------------------------------------------------
(1)          (2)          (3)          (4)          (5)
Menial      BlueCol        Craft     WhiteCol         Prof
-----------------------------------------------------------------------------
white              -0.131       0.0498       -0.160       0.0797        0.161
ed                -0.0713       -0.193       -0.146       0.0306        0.380
exper             -0.0317      -0.0497       0.0148       0.0236       0.0429
-----------------------------------------------------------------------------
predval            0.0943        0.184        0.294        0.161        0.266
outcome                 1            2            3            4            5
-----------------------------------------------------------------------------
dc coefficients

. eststo clear
[do-file]
```

### mprobit and prchange: split option

```. spex nomocc2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/nomocc2.dta", clear

. quietly mprobit occ white ed exper, nolog

mprobit: Changes in Probabilities for occ

white
Avg|Chg|      Menial     BlueCol       Craft    WhiteCol
0->1   .11142595  -.13099539   .03923495  -.14756948   .07652746

Prof
0->1   .16280247

ed
Avg|Chg|      Menial     BlueCol       Craft    WhiteCol
Min->Max   .39433155  -.13480758  -.63618958  -.21483173   .03136472
-+1/2   .05591886  -.02555373  -.06636748  -.04787594   .00948766
-+sd/2    .1577241   -.0714798  -.18783711  -.13499337   .02528359

Prof
Min->Max   .95446413
-+1/2   .13030948
-+sd/2   .36902665

exper
Avg|Chg|      Menial     BlueCol       Craft    WhiteCol
Min->Max     .123281  -.11218768  -.19601482   .01516485   .07135144
-+1/2   .00229492  -.00215125  -.00358605   .00069633   .00136708
-+sd/2   .03197956  -.02998788  -.04996105   .00971583   .01904152

Prof
Min->Max    .2216862
-+1/2   .00367388
-+sd/2   .05119154

Menial    BlueCol      Craft   WhiteCol       Prof
Pr(y|x)  .09325961  .18944861  .27852002  .15457167   .2842001

white       ed    exper
x=  .916914   13.095  20.5015
sd_x=  .276423  2.94643  13.9594

e(predval) =  .09325961
e(outcome) =  1
e(delta) =  1
e(centered) =  1

e(dc) :  5 x 3      (main, Min->Max, 0->1, -+1/2, -+sd/2)
e(pattern) :  1 x 3
e(X) :  4 x 3      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
sd change for continuous variables

results for outcome 1 stored as mprobit_1
results for outcome 2 stored as mprobit_2
results for outcome 3 stored as mprobit_3
results for outcome 4 stored as mprobit_4
results for outcome 5 stored as mprobit_5

. esttab, main(dc) nostar not scalars(predval outcome) noobs mtitles

-----------------------------------------------------------------------------
(1)          (2)          (3)          (4)          (5)
Menial      BlueCol        Craft     WhiteCol         Prof
-----------------------------------------------------------------------------
white              -0.131       0.0392       -0.148       0.0765        0.163
ed                -0.0715       -0.188       -0.135       0.0253        0.369
exper             -0.0300      -0.0500      0.00972       0.0190       0.0512
-----------------------------------------------------------------------------
predval            0.0933        0.189        0.279        0.155        0.284
outcome                 1            2            3            4            5
-----------------------------------------------------------------------------
dc coefficients

. eststo clear
[do-file]
```

### mlogit and prvalue

```. spex nomocc2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/nomocc2.dta", clear

. quietly mlogit occ white ed exper, nolog

. levelsof ed, local(edlevels)
3 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

. foreach l of local edlevels {
2.     quietly estadd prvalue, x(ed=`l' white=0) label(`l')
3. }

scalars:
e(N) =  337

macros:
e(depvar) : "occ"
e(model) : "mlogit"
e(properties) : "b"

matrices:
e(b) :  1 x 80     (predictions)
e(se) :  1 x 80     (standard errors)
e(LB) :  1 x 80     (lower CI bounds)
e(UB) :  1 x 80     (upper CI bounds)
e(Category) :  1 x 80     (outcome values)
e(X) :  3 x 16     (white, ed, exper)

results stored as NonWhite

. foreach l of local edlevels {
2.     quietly estadd prvalue, x(ed=`l' white=1) label(`l')
3. }

scalars:
e(N) =  337

macros:
e(depvar) : "occ"
e(model) : "mlogit"
e(properties) : "b"

matrices:
e(b) :  1 x 160    (predictions)
e(se) :  1 x 160    (standard errors)
e(LB) :  1 x 160    (lower CI bounds)
e(UB) :  1 x 160    (upper CI bounds)
e(Category) :  1 x 160    (outcome values)
e(X) :  3 x 32     (white, ed, exper)

results stored as White

. esttab NonWhite White, b(4) se nostar wide ///
>     keep(Menial:) mtitles eqlabels(none) noobs

----------------------------------------------------------------
(1)                       (2)
NonWhite                     White
----------------------------------------------------------------
3                  0.2847     (0.2013)       0.1216     (0.0917)
6                  0.2987     (0.1578)       0.1384     (0.0680)
7                  0.2988     (0.1440)       0.1417     (0.0585)
8                  0.2963     (0.1312)       0.1431     (0.0487)
9                  0.2906     (0.1198)       0.1417     (0.0392)
10                 0.2814     (0.1100)       0.1366     (0.0308)
11                 0.2675     (0.1021)       0.1265     (0.0245)
12                 0.2476     (0.0956)       0.1104     (0.0212)
13                 0.2199     (0.0895)       0.0883     (0.0195)
14                 0.1832     (0.0821)       0.0632     (0.0175)
15                 0.1393     (0.0714)       0.0401     (0.0142)
16                 0.0944     (0.0566)       0.0228     (0.0102)
17                 0.0569     (0.0399)       0.0120     (0.0066)
18                 0.0310     (0.0250)       0.0060     (0.0039)
19                 0.0158     (0.0143)       0.0029     (0.0022)
20                 0.0077     (0.0077)       0.0014     (0.0012)
----------------------------------------------------------------
Standard errors in parentheses

. eststo clear
[do-file]
```

### mprobit and prvalue

```. spex nomocc2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/nomocc2.dta", clear

. quietly mprobit occ white ed exper, nolog

. levelsof ed, local(edlevels)
3 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

. foreach l of local edlevels {
2.     quietly estadd prvalue, x(ed=`l' white=0) label(`l')
3. }

scalars:
e(N) =  337

macros:
e(depvar) : "occ"
e(model) : "mprobit"
e(properties) : "b"

matrices:
e(b) :  1 x 80     (predictions)
e(se) :  1 x 80     (standard errors)
e(LB) :  1 x 80     (lower CI bounds)
e(UB) :  1 x 80     (upper CI bounds)
e(Category) :  1 x 80     (outcome values)
e(X) :  3 x 16     (white, ed, exper)

results stored as NonWhite

. foreach l of local edlevels {
2.     quietly estadd prvalue, x(ed=`l' white=1) label(`l')
3. }

scalars:
e(N) =  337

macros:
e(depvar) : "occ"
e(model) : "mprobit"
e(properties) : "b"

matrices:
e(b) :  1 x 160    (predictions)
e(se) :  1 x 160    (standard errors)
e(LB) :  1 x 160    (lower CI bounds)
e(UB) :  1 x 160    (upper CI bounds)
e(Category) :  1 x 160    (outcome values)
e(X) :  3 x 32     (white, ed, exper)

results stored as White

. esttab NonWhite White, b(4) nostar not ///
>     keep(Menial:) mtitles eqlabels(none) noobs

--------------------------------------
(1)          (2)
NonWhite        White
--------------------------------------
3                  0.2446       0.1274
6                  0.2617       0.1421
7                  0.2654       0.1450
8                  0.2676       0.1462
9                  0.2679       0.1446
10                 0.2652       0.1389
11                 0.2577       0.1275
12                 0.2429       0.1098
13                 0.2185       0.0869
14                 0.1842       0.0623
15                 0.1429       0.0398
16                 0.1006       0.0225
17                 0.0636       0.0112
18                 0.0357       0.0049
19                 0.0178       0.0019
20                 0.0078       0.0006
--------------------------------------

. eststo clear
[do-file]
```

## Stereotype logistic regression

### slogit and fitstat/listcoef

```. spex ordwarm2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/ordwarm2.dta", clear

. quietly slogit warm yr89 male white age ed prst, nolog

Measures of Fit for slogit of warm

Log-Lik Full Model:          -2845.595   D(2281):                      5691.189
Wald X2(6):                    185.448   Prob > X2:                       0.000
AIC:                             2.492   AIC*n:                        5715.189
BIC:                        -11958.313
BIC used by Stata:            5776.303   AIC used by Stata:            5713.189

e(dev) =  5691.1894
e(dev_df) =  2281
e(lrx2) =  185.44833
e(lrx2_df) =  6
e(lrx2_p) =  2.361e-37
e(aic0) =  2.4924507
e(aic_n) =  5715.1894
e(bic0) =  -11958.313
e(statabic) =  5776.3032
e(stataaic) =  5713.1894
e(n_rhs) =  9
e(n_parm) =  12

slogit (N=2293): Factor Change in Odds

Odds of: 4SA vs 1SD

----------------------------------------------------------------------
warm |      b         z     P>|z|    e^b    e^bStdX      SDofX
-------------+--------------------------------------------------------
yr89 |   0.94405    6.179   0.000   2.5704   1.5878     0.4897
male |  -1.25606   -8.274   0.000   0.2848   0.5344     0.4989
white |  -0.63901   -2.973   0.003   0.5278   0.8104     0.3290
age |  -0.03841   -8.541   0.000   0.9623   0.5249    16.7790
ed |   0.10933    3.737   0.000   1.1155   1.4128     3.1608
prst |   0.01148    1.983   0.047   1.0115   1.1810    14.4923
-------------+--------------------------------------------------------
phi1_1 |   1.00000        .       .
phi1_2 |   0.74885   13.840   0.000
phi1_3 |   0.31837    6.397   0.000
-------------+--------------------------------------------------------
theta1 |  -1.06006   -2.577   0.010
theta2 |   0.13237    0.423   0.672
theta3 |   0.62730    4.399   0.000
----------------------------------------------------------------------

e(b_fact) :  1 x 6      (e^b)
e(b_facts) :  1 x 6      (e^bStdX)
e(b_sdx) :  1 x 6      (SDofX)

. esttab, cell("b b_fact b_facts") scalars(aic0 bic0) ///
>     eqlabels(none)

---------------------------------------------------
(1)
warm
b       b_fact      b_facts
---------------------------------------------------
yr89             .9440522     2.570376     1.587752
male            -1.256064     .2847727     .5343958
white           -.6390139     .5278126     .8103988
age             -.0384116     .9623168       .52492
ed               .1093335     1.115534     1.412815
prst             .0114819     1.011548     1.181044
phi1_1                  1
phi1_2           .7488452
phi1_3           .3183653
theta1          -1.060064
theta2           .1323735
theta3           .6272993
---------------------------------------------------
N                    2293
aic0                2.492
bic0             -11958.3
---------------------------------------------------
[do-file]
```

### slogit and prchange

```. spex ordwarm2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/ordwarm2.dta", clear

. quietly slogit warm yr89 male white age ed prst, nolog

. estadd prchange male age prst

slogit: Changes in Probabilities for warm

male
Avg|Chg|         1SD          2D          3A         4SA
0->1   .09093904   .07668686    .1051912  -.08178753  -.10009058

age
Avg|Chg|         1SD          2D          3A         4SA
Min->Max   .19115428   .17745935    .2048492  -.18460661  -.19770195
-+1/2   .00280473     .002321   .00328845  -.00249711  -.00311236
-+sd/2   .04692763   .03891201   .05494326  -.04169974  -.05215551

prst
Avg|Chg|         1SD          2D          3A         4SA
Min->Max   .05812308  -.04720601  -.06904018    .0497874   .06645873
-+1/2   .00083838  -.00069379    -.000983    .0007464   .00093034
-+sd/2   .01214788  -.01005406   -.0142417   .01081413   .01348165

1SD         2D         3A        4SA
Pr(y|x)  .11714774  .32349858  .39201239  .16734134

yr89     male    white      age       ed     prst
x=  .398604  .464893  .876581  44.9355  12.2181  39.5853
sd_x=  .489718  .498875  .328989   16.779  3.16083  14.4923

e(predval1) =  .11714774
e(predval2) =  .32349858
e(predval3) =  .39201239
e(predval4) =  .16734134
e(delta) =  1
e(centered) =  1

e(dc) :  5 x 15     (main, Min->Max, 0->1, -+1/2, -+sd/2)
e(pattern) :  1 x 15
e(X) :  4 x 6      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
sd change for continuous variables

. esttab, main(dc) unstack nostar not

-----------------------------------------------------------------------------
(1)
warm
Avg|Chg|          1SD           2D           3A          4SA
-----------------------------------------------------------------------------
male               0.0909       0.0767        0.105      -0.0818       -0.100
age                0.0469       0.0389       0.0549      -0.0417      -0.0522
prst               0.0121      -0.0101      -0.0142       0.0108       0.0135
-----------------------------------------------------------------------------
N                    2293
-----------------------------------------------------------------------------
dc coefficients
[do-file]
```

### slogit and prchange: selected outcome

```. spex ordwarm2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/ordwarm2.dta", clear

. quietly slogit warm yr89 male white age ed prst, nolog

. estadd prchange age ed prst, outcome(2)

slogit: Changes in Probabilities for warm

Outcome: 2 (2D)

Min->Max        0->1       -+1/2      -+sd/2
age    .2048492   .00294244   .00328845   .05494326
ed  -.17157121  -.00616026  -.00935909   -.0295499
prst  -.06904018  -.00090283    -.000983   -.0142417

1SD         2D         3A        4SA
Pr(y|x)  .11714774  .32349858  .39201239  .16734134

yr89     male    white      age       ed     prst
x=  .398604  .464893  .876581  44.9355  12.2181  39.5853
sd_x=  .489718  .498875  .328989   16.779  3.16083  14.4923

e(predval) =  .32349858
e(outcome) =  2
e(delta) =  1
e(centered) =  1

e(dc) :  5 x 3      (main, Min->Max, 0->1, -+1/2, -+sd/2)
e(pattern) :  1 x 3
e(X) :  4 x 6      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
sd change for continuous variables

. esttab, cell("dc[Min->Max] dc[-+1/2] dc[-+sd/2]") stats(predval outcome)

---------------------------------------------------
(1)
warm
Min->Max        -+1/2       -+sd/2
---------------------------------------------------
age              .2048492     .0032884     .0549433
ed              -.1715712    -.0093591    -.0295499
prst            -.0690402     -.000983    -.0142417
---------------------------------------------------
predval          .3234986
outcome                 2
---------------------------------------------------
[do-file]
```

### slogit and prchange: split option

```. spex ordwarm2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/ordwarm2.dta", clear

. quietly slogit warm yr89 male white age ed prst, nolog

. estadd prchange male age prst, split

slogit: Changes in Probabilities for warm

male
Avg|Chg|         1SD          2D          3A         4SA
0->1   .09093904   .07668686    .1051912  -.08178753  -.10009058

age
Avg|Chg|         1SD          2D          3A         4SA
Min->Max   .19115428   .17745935    .2048492  -.18460661  -.19770195
-+1/2   .00280473     .002321   .00328845  -.00249711  -.00311236
-+sd/2   .04692763   .03891201   .05494326  -.04169974  -.05215551

prst
Avg|Chg|         1SD          2D          3A         4SA
Min->Max   .05812308  -.04720601  -.06904018    .0497874   .06645873
-+1/2   .00083838  -.00069379    -.000983    .0007464   .00093034
-+sd/2   .01214788  -.01005406   -.0142417   .01081413   .01348165

1SD         2D         3A        4SA
Pr(y|x)  .11714774  .32349858  .39201239  .16734134

yr89     male    white      age       ed     prst
x=  .398604  .464893  .876581  44.9355  12.2181  39.5853
sd_x=  .489718  .498875  .328989   16.779  3.16083  14.4923

e(predval) =  .11714774
e(outcome) =  1
e(delta) =  1
e(centered) =  1

e(dc) :  5 x 3      (main, Min->Max, 0->1, -+1/2, -+sd/2)
e(pattern) :  1 x 3
e(X) :  4 x 6      (X, SD, Min, Max)

first row in e(dc) contains:

01 change for binary variables
sd change for continuous variables

results for outcome 1 stored as slogit_1
results for outcome 2 stored as slogit_2
results for outcome 3 stored as slogit_3
results for outcome 4 stored as slogit_4

. esttab, main(dc) nostar not stats(predval outcome) ///
>     mtitles nonumbers

----------------------------------------------------------------
1SD           2D           3A          4SA
----------------------------------------------------------------
male               0.0767        0.105      -0.0818       -0.100
age                0.0389       0.0549      -0.0417      -0.0522
prst              -0.0101      -0.0142       0.0108       0.0135
----------------------------------------------------------------
predval             0.117        0.323        0.392        0.167
outcome                 1            2            3            4
----------------------------------------------------------------
dc coefficients

. eststo clear
[do-file]
```

### slogit and prvalue

```. spex ordwarm2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/ordwarm2.dta", clear

. quietly slogit warm yr89 male white age ed prst, nolog

. estadd prvalue, x(yr89=0 male=1 prst=20 age=64 ed=16) ///
>     brief label(type1)

slogit: Predictions for warm

Pr(y=1SD|x):        0.2341
Pr(y=2D|x):         0.4333
Pr(y=3A|x):         0.2646
Pr(y=4SA|x):        0.0680

. estadd prvalue, x(yr89=1 male=0 prst=80 age=30 ed=24) ///
>     brief label(type2)

slogit: Predictions for warm

Pr(y=1SD|x):        0.0112
Pr(y=2D|x):         0.0737
Pr(y=3A|x):         0.3993
Pr(y=4SA|x):        0.5158

updated matrices:

. estadd prvalue, x(yr89=0) brief label(type3)

slogit: Predictions for warm

Pr(y=1SD|x):        0.1412
Pr(y=2D|x):         0.3548
Pr(y=3A|x):         0.3656
Pr(y=4SA|x):        0.1384

updated matrices:

. estadd prvalue, x(yr89=1) brief label(type4)

slogit: Predictions for warm

Pr(y=1SD|x):        0.0860
Pr(y=2D|x):         0.2738
Pr(y=3A|x):         0.4236
Pr(y=4SA|x):        0.2167

updated matrices:

scalars:
e(N) =  2293

macros:
e(depvar) : "warm"
e(model) : "slogit"
e(properties) : "b"

matrices:
e(b) :  1 x 16     (predictions)
e(se) :  1 x 16     (standard errors)
e(LB) :  1 x 16     (lower CI bounds)
e(UB) :  1 x 16     (upper CI bounds)
e(Category) :  1 x 16     (outcome values)
e(X) :  6 x 4      (yr89, male, white, age, ed, prst)

. esttab, nostar not unstack ///
>     coeflabels(type1 "old working class men 1977"   ///
>                type2 "young prestigious women 1989" ///
>                type3 "average individual 1977" ///
>                type4 "average individual 1989") ///
>     varwidth(28) compress

--------------------------------------------------------------------
(1)
warm
1SD        2D        3A       4SA
--------------------------------------------------------------------
old working class men 1977       0.234     0.433     0.265    0.0680
young prestigious women 1989    0.0112    0.0737     0.399     0.516
average individual 1977          0.141     0.355     0.366     0.138
average individual 1989         0.0860     0.274     0.424     0.217
--------------------------------------------------------------------
N                                 2293
--------------------------------------------------------------------
[do-file]
```

## Conditional logit

### clogit and fitstat/listcoef

```. spex travel2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/travel2.dta", clear

. quietly clogit choice train bus time invc, group(id) nolog

Measures of Fit for clogit of choice

Log-Lik Intercept Only:       -166.989   Log-Lik Full Model:            -80.961
D(148):                        161.922   LR(4):                         172.056
Prob > LR:                       0.000
ML (Cox-Snell) R2:               0.678   Cragg-Uhler(Nagelkerke) R2:      0.762
Count R2:                        0.875
AIC:                             1.118   AIC*n:                         169.922
BIC:                          -581.612   BIC':                         -151.960
BIC used by Stata:             186.412   AIC used by Stata:             169.922

e(dev) =  161.92227
e(dev_df) =  148
e(lrx2) =  172.05587
e(lrx2_df) =  4
e(lrx2_p) =  3.786e-36
e(r2_mf) =  .51517105
e(r2_ml) =  .67759491
e(r2_cu) =  .76229428
e(r2_ct) =  .875
e(aic0) =  1.1179097
e(aic_n) =  169.92227
e(bic0) =  -581.61205
e(bic_p) =  -151.96034
e(statabic) =  186.41224
e(stataaic) =  169.92227
e(n_rhs) =  3
e(n_parm) =  4

clogit (N=456): Factor Change in Odds

Odds of: 1 vs 0

--------------------------------------------------
choice |      b         z     P>|z|    e^b
-------------+------------------------------------
train |   2.67124    5.895   0.000  14.4579
bus |   1.47233    3.674   0.000   4.3594
time |  -0.01915   -7.812   0.000   0.9810
invc |  -0.04817   -4.030   0.000   0.9530
--------------------------------------------------

e(b_fact) :  1 x 4      (e^b)

clogit (N=456): Percentage Change in Odds

Odds of: 1 vs 0

--------------------------------------------------
choice |      b         z     P>|z|      %
-------------+------------------------------------
train |   2.67124    5.895   0.000   1345.8
bus |   1.47233    3.674   0.000    335.9
time |  -0.01915   -7.812   0.000     -1.9
invc |  -0.04817   -4.030   0.000     -4.7
--------------------------------------------------

e(b_pct) :  1 x 4      (%)

. esttab, cell("b b_fact b_pct") scalars(r2_mf r2_mfadj r2_ml r2_cu)

---------------------------------------------------
(1)
choice
b       b_fact        b_pct
---------------------------------------------------
choice
train            2.671238     14.45786     1345.786
bus              1.472335     4.359401     335.9401
time            -.0191453     .9810368    -1.896319
invc            -.0481658     .9529758    -4.702424
---------------------------------------------------
N                     456
r2_mf               0.515
r2_ml               0.678
r2_cu               0.762
---------------------------------------------------
[do-file]
```

### clogit and asprvalue: alternative-specific variables only

```. spex travel2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/travel2.dta", clear

. quietly clogit choice train bus time invc, group(id) nolog

. quietly asprvalue, x(time=643.4 674.6 578.3) rest(asmean) ///
>     cat(train bus) base(car) save

. estadd asprvalue, x(time=653.4 674.6 578.3) rest(asmean) ///
>     cat(train bus) base(car) label(time train + 10 min) brief diff

clogit: Predictions for choice

Current       Saved        Diff
train   .38845369   .43478274  -.04632905
bus   .16446434   .15200497   .01245937
car   .44708198   .41321227   .03386971

. estadd asprvalue, x(time=643.4 684.6 578.3) rest(asmean) ///
>     cat(train bus) base(car) label(time bus + 10 min) brief diff

clogit: Predictions for choice

Current       Saved        Diff
train   .44661152   .43478274   .01182878
bus   .12893429   .15200497  -.02307068
car   .42445418   .41321227   .01124191

updated matrices:

. estadd asprvalue, x(time=643.4 674.6 588.3) rest(asmean) ///
>     cat(train bus) base(car) label(time car + 10 min) brief diff

clogit: Predictions for choice

Current       Saved        Diff
train   .46851528   .43478274   .03373253
bus   .16379826   .15200497   .01179329
car   .36768648   .41321227  -.04552579

updated matrices:

scalars:
e(N) =  456

macros:
e(depvar) : "choice"
e(model) : "clogit"
e(properties) : "b"

matrices:
e(b) :  1 x 9      (predictions)

. esttab, unstack not nostar varwidth(20)

-----------------------------------------------------------
(1)
choice
train          bus          car
-----------------------------------------------------------
time train + 10 min       -0.0463       0.0125       0.0339
time bus + 10 min          0.0118      -0.0231       0.0112
time car + 10 min          0.0337       0.0118      -0.0455
-----------------------------------------------------------
N                             456
-----------------------------------------------------------
[do-file]
```

### clogit and asprvalue: alternative-specific and case-specific variables

```. spex travel2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/travel2.dta", clear

. gen busXhinc = bus*hinc

. gen trainXhinc = train*hinc

. gen busXpsize = bus*psize

. gen trainXpsize = train*psize

. quietly clogit choice busXhinc busXpsize bus trainXhinc trainXpsize train ///
>     time invc, group(id) nolog

. quietly asprvalue, x(psize=1) rest(asmean) base(car) save

. estadd asprvalue,  x(psize=2) rest(asmean) base(car) label(_cons) brief diff

clogit: Predictions for choice

Current       Saved        Diff
bus   .13919763   .21251462  -.07331699
train   .44040644   .40365174    .0367547
car   .42039591   .38383365   .03656226

scalars:
e(N) =  456

macros:
e(depvar) : "choice"
e(model) : "clogit"
e(properties) : "b"

matrices:
e(b) :  1 x 3      (predictions)

. esttab, b not nostar eqlabels(none) ///
>      mtitle("psize=2 - psize=1") modelw(20)

---------------------------------
(1)
psize=2 - psize=1
---------------------------------
bus                       -0.0733
train                      0.0368
car                        0.0366
---------------------------------
N                             456
---------------------------------
[do-file]
```

## Alternative-specific multinomial probit

### asmprobit and asprvalue

```. spex travel2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/travel2.dta", clear

. quietly asmprobit choice time invc, case(id) alternatives(mode) nolog

asmprobit: Predictions for choice

prob
Train  .76511556
Bus  .09945779
Car  .13547295

alternative-specific variables

Train        Bus        Car
time  643.44079  643.44079  643.44079
invc  48.618421  48.618421  48.618421

. estadd asprvalue, rest(asmean) label(at asmeans)

asmprobit: Predictions for choice

prob
Train  .42618456
Bus  .12483268
Car  .44901165

alternative-specific variables

Train        Bus        Car
time  643.44079  674.61842  578.26974
invc  48.618421  33.144737  20.092105

updated matrices:

scalars:
e(N) =  456

macros:
e(depvar) : "choice"
e(model) : "asmprobit"
e(properties) : "b"

matrices:
e(b) :  1 x 6      (predictions)
e(asv) :  2 x 6      (time, invc)
e(csv) :  2 x 2      (hinc, psize)

. esttab, unstack not nostar nomtitle nonumber

--------------------------------------
at means   at asmeans
--------------------------------------
Train               0.765        0.426
Bus                0.0995        0.125
Car                 0.135        0.449
--------------------------------------
N                     456
--------------------------------------
[do-file]
```

## Rank-ordered logit

### rologit and fitstat/listcoef

```. spex wlsrnk

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/wlsrnk.dta", clear

. label variable value1 "est"

. label variable value2 "var"

. label variable value3 "aut"

. label variable value4 "sec"

. case2alt, casevars(fem hn) rank(value) case(id) alt(hashi haslo) gen(rank)
(note: variable _altnum used since altnum() not specified)

ranks indicated by: rank
case identifier: id
case-specific interactions: est* var* aut* sec*
alternative-specific variables: hashi haslo

. rologit rank estXfem estXhn est varXfem varXhn var ///
>     autXfem autXhn aut hashi haslo, group(id) reverse nolog

Rank-ordered logistic regression                Number of obs      =     12904
Group variable: id                              Number of groups   =      3226

Ties handled via the exactm method              Obs per group: min =         4
avg =      4.00
max =         4

LR chi2(11)        =   1947.39
Log likelihood = -6127.559                      Prob > chi2        =    0.0000

------------------------------------------------------------------------------
rank |      Coef.   Std. Err.      z    P>|z|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
estXfem |  -.1497926   .0783025    -1.91   0.056    -.3032626    .0036774
estXhn |   .1375338   .0394282     3.49   0.000      .060256    .2148116
est |  -1.017202    .054985   -18.50   0.000     -1.12497   -.9094331
varXfem |  -.1640212   .0728306    -2.25   0.024    -.3067666   -.0212759
varXhn |   .2590404   .0370942     6.98   0.000     .1863372    .3317437
var |    .528224   .0525894    10.04   0.000     .4251506    .6312974
autXfem |  -.1401769   .0718325    -1.95   0.051     -.280966    .0006123
autXhn |   .2133866   .0361647     5.90   0.000      .142505    .2842682
aut |  -.1516741   .0510374    -2.97   0.003    -.2517055   -.0516427
hashi |   .1780449   .0374744     4.75   0.000     .1045965    .2514934
haslo |  -.2064148   .0425829    -4.85   0.000    -.2898758   -.1229539
------------------------------------------------------------------------------

Measures of Fit for rologit of rank

Log-Lik Full Model:          -6127.559   D(12893):                    12255.119
LR(11):                       1947.390
Prob > LR:                       0.000
AIC:                             0.951   AIC*n:                       12277.119
BIC:                       -109780.899   BIC':                        -1843.272
BIC used by Stata:           12359.237   AIC used by Stata:           12277.119

e(dev) =  12255.119
e(dev_df) =  12893
e(lrx2) =  1947.3899
e(lrx2_df) =  11
e(lrx2_p) =  0
e(aic0) =  .95141963
e(aic_n) =  12277.119
e(bic0) =  -109780.9
e(bic_p) =  -1843.2717
e(statabic) =  12359.237
e(stataaic) =  12277.119
e(n_rhs) =  10
e(n_parm) =  11

rologit (N=12904): Factor Change in Odds

Odds of: ranked ahead vs ranked behind

--------------------------------------------------
rank |      b         z     P>|z|    e^b
-------------+------------------------------------
estXfem |  -0.14979   -1.913   0.056   0.8609
estXhn |   0.13753    3.488   0.000   1.1474
est |  -1.01720  -18.500   0.000   0.3616
varXfem |  -0.16402   -2.252   0.024   0.8487
varXhn |   0.25904    6.983   0.000   1.2957
var |   0.52822   10.044   0.000   1.6959
autXfem |  -0.14018   -1.951   0.051   0.8692
autXhn |   0.21339    5.900   0.000   1.2379
aut |  -0.15167   -2.972   0.003   0.8593
hashi |   0.17804    4.751   0.000   1.1949
haslo |  -0.20641   -4.847   0.000   0.8135
--------------------------------------------------

e(b_fact) :  1 x 11     (e^b)

rologit (N=12904): Percentage Change in Odds

Odds of: ranked ahead vs ranked behind

--------------------------------------------------
rank |      b         z     P>|z|      %
-------------+------------------------------------
estXfem |  -0.14979   -1.913   0.056    -13.9
estXhn |   0.13753    3.488   0.000     14.7
est |  -1.01720  -18.500   0.000    -63.8
varXfem |  -0.16402   -2.252   0.024    -15.1
varXhn |   0.25904    6.983   0.000     29.6
var |   0.52822   10.044   0.000     69.6
autXfem |  -0.14018   -1.951   0.051    -13.1
autXhn |   0.21339    5.900   0.000     23.8
aut |  -0.15167   -2.972   0.003    -14.1
hashi |   0.17804    4.751   0.000     19.5
haslo |  -0.20641   -4.847   0.000    -18.7
--------------------------------------------------

e(b_pct) :  1 x 11     (%)

. esttab, cell("b b_fact b_pct") scalars(aic0 aic_n bic0 bic_p)

---------------------------------------------------
(1)
rank
b       b_fact        b_pct
---------------------------------------------------
estXfem         -.1497926     .8608865    -13.91135
estXhn           .1375338      1.14744     14.74405
est             -1.017202     .3616054    -63.83946
varXfem         -.1640212      .848724     -15.1276
varXhn           .2590404     1.295686     29.56862
var               .528224     1.695918     69.59177
autXfem         -.1401769     .8692045    -13.07955
autXhn           .2133866     1.237863     23.78631
aut             -.1516741     .8592683    -14.07317
hashi            .1780449     1.194879      19.4879
haslo           -.2064148     .8134955    -18.65045
---------------------------------------------------
N                   12904
aic0                0.951
aic_n             12277.1
bic0            -109780.9
bic_p             -1843.3
---------------------------------------------------
[do-file]
```

### rologit and asprvalue

```. spex wlsrnk

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/wlsrnk.dta", clear

. label variable value1 "est"

. label variable value2 "var"

. label variable value3 "aut"

. label variable value4 "sec"

. case2alt, casevars(fem hn) rank(value) case(id) alt(hashi haslo) gen(rank)
(note: variable _altnum used since altnum() not specified)

ranks indicated by: rank
case identifier: id
case-specific interactions: est* var* aut* sec*
alternative-specific variables: hashi haslo

. quietly rologit rank estXfem estXhn est varXfem varXhn var ///
>     autXfem autXhn aut hashi haslo, group(id) reverse nolog

. estadd asprvalue, x(fem=1 hashi=0 haslo=0) base(sec) label(fem=1) brief save

rologit: Predictions for rank

prob
est  .08876531
var  .41536212
aut  .21456315
sec  .28130943

. estadd asprvalue, x(fem=0 hashi=0 haslo=0) base(sec) label(fem=0) brief

rologit: Predictions for rank

prob
est  .09200718
var  .43670157
aut   .2202711
sec  .25102016

updated matrices:

. estadd asprvalue, x(fem=0 hashi=0 haslo=0) base(sec) label(diff)  brief diff

rologit: Predictions for rank

Current       Saved        Diff
est   .09200718   .08876531   .00324187
var   .43670157   .41536212   .02133945
aut    .2202711   .21456315   .00570795
sec   .25102016   .28130943  -.03028926

updated matrices:

scalars:
e(N) =  12904

macros:
e(depvar) : "rank"
e(model) : "rologit"
e(properties) : "b"

matrices:
e(b) :  1 x 12     (predictions)
e(asv) :  2 x 8      (hashi, haslo)
e(csv) :  2 x 2      (fem, hn)

. esttab, not nostar unstack

---------------------------------------------------
(1)
rank
fem=1        fem=0         diff
---------------------------------------------------
est                0.0888       0.0920      0.00324
var                 0.415        0.437       0.0213
aut                 0.215        0.220      0.00571
sec                 0.281        0.251      -0.0303
---------------------------------------------------
N                   12904
---------------------------------------------------
[do-file]
```

## Poisson/negative binomial regression

### poisson/nbreg and fitstat

```. spex couart2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/couart2.dta", clear

. eststo poisson: quietly poisson art fem mar kid5 phd ment, nolog

. eststo nbreg: quietly nbreg art fem mar kid5 phd ment, nolog

. esttab, wide scalars(r2_mf r2_mfadj aic0 aic_n) mtitles

----------------------------------------------------------------------
(1)                          (2)
poisson                        nbreg
----------------------------------------------------------------------
art
fem                -0.225***      (-4.11)       -0.216**       (-2.98)
mar                 0.155*         (2.53)        0.150          (1.83)
kid5               -0.185***      (-4.61)       -0.176***      (-3.32)
phd                0.0128          (0.49)       0.0153          (0.42)
ment               0.0255***      (12.73)       0.0291***       (8.38)
_cons               0.305**        (2.96)        0.256          (1.85)
----------------------------------------------------------------------
lnalpha
_cons                                           -0.817***      (-6.81)
----------------------------------------------------------------------
N                     915                          915
r2_mf              0.0525                       0.0304
aic0                3.622                        3.427
aic_n              3314.1                       3135.9
----------------------------------------------------------------------
t statistics in parentheses
* p<0.05, ** p<0.01, *** p<0.001

. eststo clear
[do-file]
```

### poisson/nbreg and listcoef

```. spex couart2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/couart2.dta", clear

. eststo poisson: quietly poisson art fem mar kid5 phd ment, nolog

. eststo nbreg: quietly nbreg art fem mar kid5 phd ment, nolog

. estadd listcoef fem ment: *

. estadd listcoef fem ment, percent nosd : *

. esttab, cell("b_facts b_pcts") keep(fem ment) mtitles

----------------------------------------------------------------
(1)                       (2)
poisson                     nbreg
b_facts       b_pcts      b_facts       b_pcts
----------------------------------------------------------------
fem              .8940439    -10.59561     .8976965    -10.23035
ment             1.274107     27.41066     1.317603     31.76034
----------------------------------------------------------------
N                     915                       915
----------------------------------------------------------------

. eststo clear
[do-file]
```

### poisson/nbreg and prchange: effects on rate

```. spex couart2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/couart2.dta", clear

. eststo poisson: quietly poisson art fem mar kid5 phd ment, nolog

. eststo nbreg: quietly nbreg art fem mar kid5 phd ment, nolog

. esttab, aux(dc) nopar wide mtitles

----------------------------------------------------------------------
(1)                          (2)
poisson                        nbreg
----------------------------------------------------------------------
art
fem                -0.225***       -0.359       -0.216**        -0.344
mar                 0.155*          0.244        0.150           0.235
kid5               -0.185***       -0.228       -0.176***       -0.216
phd                0.0128          0.0203       0.0153          0.0241
ment               0.0255***        0.391       0.0291***        0.443
_cons               0.305**                      0.256
----------------------------------------------------------------------
lnalpha
_cons                                           -0.817***
----------------------------------------------------------------------
N                     915                          915
----------------------------------------------------------------------
dc in second column
* p<0.05, ** p<0.01, *** p<0.001

. eststo clear
[do-file]
```

### poisson/nbreg and prchange: effects on probability of selected outcome

```. spex couart2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/couart2.dta", clear

. eststo poisson0: quietly poisson art fem mar kid5 phd ment, nolog

. eststo nbreg0: quietly nbreg art fem mar kid5 phd ment, nolog

. estadd prchange, outcome(0) : *0

. eststo poisson1: quietly poisson art fem mar kid5 phd ment, nolog

. eststo nbreg1: quietly nbreg art fem mar kid5 phd ment, nolog

. estadd prchange, outcome(1) : *1

. esttab, main(dc) nostar not scalars(outcome predval) mtitles

----------------------------------------------------------------
(1)          (2)          (3)          (4)
poisson0       nbreg0     poisson1       nbreg1
----------------------------------------------------------------
fem                0.0725       0.0606       0.0431       0.0209
mar               -0.0506      -0.0424      -0.0289      -0.0141
kid5               0.0455       0.0377       0.0277       0.0133
phd              -0.00406     -0.00420     -0.00248     -0.00148
ment              -0.0777      -0.0769      -0.0473      -0.0270
----------------------------------------------------------------
N                     915          915          915          915
outcome                 0            0            1            1
predval             0.200        0.298        0.322        0.279
----------------------------------------------------------------
dc coefficients

. eststo clear
[do-file]
```

### poisson/nbreg and prvalue

```. spex couart2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/couart2.dta", clear

. eststo poisson: quietly poisson art fem mar kid5 phd ment, nolog

poisson: Predictions for art

Confidence intervals by delta method

95% Conf. Interval
Rate:               1.6101   [ 1.5265,    1.6937]
Pr(y=0|x):          0.1999   [ 0.1832,    0.2166]
Pr(y=1|x):          0.3218   [ 0.3116,    0.3320]
Pr(y=2|x):          0.2591   [ 0.2538,    0.2643]
Pr(y=3|x):          0.1390   [ 0.1290,    0.1491]
Pr(y=4|x):          0.0560   [ 0.0490,    0.0629]
Pr(y=5|x):          0.0180   [ 0.0149,    0.0212]
Pr(y=6|x):          0.0048   [ 0.0037,    0.0059]
Pr(y=7|x):          0.0011   [ 0.0008,    0.0014]
Pr(y=8|x):          0.0002   [ 0.0001,    0.0003]
Pr(y=9|x):          0.0000   [ 0.0000,    0.0001]

fem        mar       kid5        phd       ment
x=  .46010929  .66229508  .49508197  3.1031093  8.7672131

. eststo nbreg: quietly nbreg art fem mar kid5 phd ment, nolog

nbreg: Predictions for art

Confidence intervals by delta method

95% Conf. Interval
Rate:                1.602   [ 1.4936,    1.7104]
Pr(y=0|x):          0.2978   [ 0.2788,    0.3167]
Pr(y=1|x):          0.2794   [ 0.2727,    0.2860]
Pr(y=2|x):          0.1889   [ 0.1859,    0.1919]
Pr(y=3|x):          0.1113   [ 0.1051,    0.1174]
Pr(y=4|x):          0.0607   [ 0.0549,    0.0664]
Pr(y=5|x):          0.0315   [ 0.0273,    0.0357]
Pr(y=6|x):          0.0158   [ 0.0130,    0.0186]
Pr(y=7|x):          0.0077   [ 0.0061,    0.0094]
Pr(y=8|x):          0.0037   [ 0.0028,    0.0046]
Pr(y=9|x):          0.0018   [ 0.0012,    0.0023]

fem        mar       kid5        phd       ment
x=  .46010929  .66229508  .49508197  3.1031093  8.7672131

. estadd prvalue post, swap: *

. esttab, b(4) nostar ci wide compress ///
>     mtitles eqlabels(none)

----------------------------------------------------------------
(1)                        (2)
poisson                      nbreg
----------------------------------------------------------------
mu            1.6101  [1.5265,1.6937]    1.6020  [1.4936,1.7104]
0             0.1999  [0.1832,0.2166]    0.2978  [0.2788,0.3167]
1             0.3218  [0.3116,0.3320]    0.2794  [0.2727,0.2860]
2             0.2591  [0.2538,0.2643]    0.1889  [0.1859,0.1919]
3             0.1390  [0.1290,0.1491]    0.1113  [0.1051,0.1174]
4             0.0560  [0.0490,0.0629]    0.0607  [0.0549,0.0664]
5             0.0180  [0.0149,0.0212]    0.0315  [0.0273,0.0357]
6             0.0048  [0.0037,0.0059]    0.0158  [0.0130,0.0186]
7             0.0011  [0.0008,0.0014]    0.0077  [0.0061,0.0094]
8             0.0002  [0.0001,0.0003]    0.0037  [0.0028,0.0046]
9             0.0000  [0.0000,0.0001]    0.0018  [0.0012,0.0023]
----------------------------------------------------------------
N                915                        915
----------------------------------------------------------------
95% confidence intervals in brackets

. eststo clear
[do-file]
```

## Zero-truncated Poisson/negative binomial

### ztp/ztnb and fitstat

```. spex couart2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/couart2.dta", clear

. drop if art==0 // artificially truncated the data
(275 observations deleted)

. eststo ztp: quietly ztp art fem mar kid5 phd ment, nolog

. eststo ztnb: quietly ztnb art fem mar kid5 phd ment, nolog

. esttab, wide scalars(r2_mf r2_mfadj aic0 aic_n) mtitles

----------------------------------------------------------------------
(1)                          (2)
ztp                         ztnb
----------------------------------------------------------------------
art
fem                -0.229***      (-3.51)       -0.245*        (-2.52)
mar                0.0965          (1.32)        0.103          (0.95)
kid5               -0.142**       (-2.93)       -0.153*        (-2.12)
phd               -0.0127         (-0.41)     -0.00293         (-0.06)
ment               0.0187***       (8.22)       0.0237***       (5.54)
_cons               0.671***       (5.48)        0.355          (1.80)
----------------------------------------------------------------------
lnalpha
_cons                                           -0.603**       (-2.68)
----------------------------------------------------------------------
N                     640                          640
r2_mf              0.0436                       0.0212
aic0                3.394                        3.232
aic_n              2172.1                       2068.6
----------------------------------------------------------------------
t statistics in parentheses
* p<0.05, ** p<0.01, *** p<0.001

. eststo clear
[do-file]
```

### ztp/ztnb and listcoef

```. spex couart2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/couart2.dta", clear

. drop if art==0 // artificially truncated the data
(275 observations deleted)

. eststo ztp: quietly ztp art fem mar kid5 phd ment, nolog

. eststo ztnb: quietly ztnb art fem mar kid5 phd ment, nolog

. estadd listcoef fem ment: *

. estadd listcoef fem ment, percent nosd : *

. esttab, cell("b_facts b_pcts") keep(fem ment) mtitles

----------------------------------------------------------------
(1)                       (2)
ztp                      ztnb
b_facts       b_pcts      b_facts       b_pcts
----------------------------------------------------------------
fem              .8926405    -10.73595     .8855335    -11.44665
ment             1.213629     21.36292     1.277855     27.78551
----------------------------------------------------------------
N                     640                       640
----------------------------------------------------------------

. eststo clear
[do-file]
```

### ztp/ztnb and prchange: effects on rate

```. spex couart2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/couart2.dta", clear

. drop if art==0 // artificially truncated the data
(275 observations deleted)

. eststo ztp: quietly ztp art fem mar kid5 phd ment, nolog

. eststo ztnb: quietly ztnb art fem mar kid5 phd ment, nolog

. esttab, aux(dc) nopar wide mtitles

----------------------------------------------------------------------
(1)                          (2)
ztp                         ztnb
----------------------------------------------------------------------
art
fem                -0.229***       -0.463       -0.245*         -0.389
mar                0.0965           0.195        0.103           0.164
kid5               -0.142**        -0.216       -0.153*         -0.183
phd               -0.0127         -0.0257     -0.00293        -0.00466
ment               0.0187***        0.398       0.0237***        0.396
_cons               0.671***                     0.355
----------------------------------------------------------------------
lnalpha
_cons                                           -0.603**
----------------------------------------------------------------------
N                     640                          640
----------------------------------------------------------------------
dc in second column
* p<0.05, ** p<0.01, *** p<0.001

. eststo clear
[do-file]
```

### ztp/ztnb and prchange: effects on probability of selected outcome

```. spex couart2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/couart2.dta", clear

. drop if art==0 // artificially truncated the data
(275 observations deleted)

. eststo ztp0: quietly ztp art fem mar kid5 phd ment, nolog

. eststo ztnb0: quietly ztnb art fem mar kid5 phd ment, nolog

. estadd prchange, outcome(0) : *0

. eststo ztp1: quietly ztp art fem mar kid5 phd ment, nolog

. eststo ztnb1: quietly ztnb art fem mar kid5 phd ment, nolog

. estadd prchange, outcome(1) : *1

. esttab, main(dc) nostar not scalars(outcome predval) mtitles

----------------------------------------------------------------
(1)          (2)          (3)          (4)
ztp0        ztnb0         ztp1        ztnb1
----------------------------------------------------------------
fem                0.0610       0.0662       0.0622       0.0207
mar               -0.0259      -0.0281      -0.0263     -0.00874
kid5               0.0278       0.0307       0.0292      0.00993
phd               0.00331     0.000781      0.00348     0.000253
ment              -0.0510      -0.0661      -0.0534      -0.0213
----------------------------------------------------------------
N                     640          640          640          640
outcome                 0            0            1            1
predval             0.129        0.315        0.264        0.270
----------------------------------------------------------------
dc coefficients

. eststo clear
[do-file]
```

### ztp/ztnb and prvalue

```. spex couart2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/couart2.dta", clear

. drop if art==0 // artificially truncated the data
(275 observations deleted)

. eststo ztp: quietly ztp art fem mar kid5 phd ment, nolog

ztp: Predictions for art

Uncond     Cond
Rate:               2.0507   2.3534
Pr(y=0|x):          0.1286        .
Pr(y=1|x):          0.2638   0.3028
Pr(y=2|x):          0.2705   0.3104
Pr(y=3|x):          0.1849   0.2122
Pr(y=4|x):          0.0948   0.1088
Pr(y=5|x):          0.0389   0.0446
Pr(y=6|x):          0.0133   0.0152
Pr(y=7|x):          0.0039   0.0045
Pr(y=8|x):          0.0010   0.0011
Pr(y=9|x):          0.0002   0.0003

fem        mar       kid5        phd       ment
x=    .440625    .671875    .471875  3.1539765   10.14375

. eststo ztnb: quietly ztnb art fem mar kid5 phd ment, nolog

ztnb: Predictions for art

Uncond     Cond
Rate:               1.6097   2.3505
Pr(y=0|x):          0.3152        .
Pr(y=1|x):          0.2698   0.3940
Pr(y=2|x):          0.1787   0.2609
Pr(y=3|x):          0.1067   0.1559
Pr(y=4|x):          0.0603   0.0881
Pr(y=5|x):          0.0329   0.0481
Pr(y=6|x):          0.0175   0.0256
Pr(y=7|x):          0.0092   0.0134
Pr(y=8|x):          0.0047   0.0069
Pr(y=9|x):          0.0024   0.0035

fem        mar       kid5        phd       ment
x=    .440625    .671875    .471875  3.1539765   10.14375

. estadd prvalue post, swap: *

. esttab, b(4) nostar not mtitles eqlabels(none)

--------------------------------------
(1)          (2)
ztp         ztnb
--------------------------------------
mu                 2.0507       1.6097
0                  0.1286       0.3152
1                  0.2638       0.2698
2                  0.2705       0.1787
3                  0.1849       0.1067
4                  0.0948       0.0603
5                  0.0389       0.0329
6                  0.0133       0.0175
7                  0.0039       0.0092
8                  0.0010       0.0047
9                  0.0002       0.0024
--------------------------------------
N                     640          640
--------------------------------------

. eststo clear
[do-file]
```

## Zero-inflated Poisson/negative binomial

### zip/zinb and fitstat

```. spex couart2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/couart2.dta", clear

. eststo zip: quietly zip art fem mar kid5 phd ment, ///
>                     inf(fem mar kid5 phd ment) nolog

. eststo zinb: quietly zinb art fem mar kid5 phd ment, ///
>                     inf(fem mar kid5 phd ment) nolog

. esttab, wide scalars(r2_mf r2_mfadj aic0 aic_n) mtitles

----------------------------------------------------------------------
(1)                          (2)
zip                         zinb
----------------------------------------------------------------------
art
fem                -0.209***      (-3.30)       -0.196**       (-2.59)
mar                 0.104          (1.46)       0.0976          (1.16)
kid5               -0.143**       (-3.02)       -0.152**       (-2.80)
phd              -0.00617         (-0.20)    -0.000700         (-0.02)
ment               0.0181***       (7.89)       0.0248***       (7.10)
_cons               0.641***       (5.28)        0.417**        (2.90)
----------------------------------------------------------------------
inflate
fem                 0.110          (0.39)        0.636          (0.75)
mar                -0.354         (-1.11)       -1.499         (-1.60)
kid5                0.217          (1.10)        0.628          (1.42)
phd               0.00127          (0.01)      -0.0377         (-0.12)
ment               -0.134**       (-2.96)       -0.882**       (-2.79)
_cons              -0.577         (-1.13)       -0.192         (-0.14)
----------------------------------------------------------------------
lnalpha
_cons                                           -0.976***      (-7.21)
----------------------------------------------------------------------
N                     915                          915
r2_mf              0.0444                       0.0372
aic0                3.534                        3.416
aic_n              3233.5                       3126.0
----------------------------------------------------------------------
t statistics in parentheses
* p<0.05, ** p<0.01, *** p<0.001

. eststo clear
[do-file]
```

### zip/zinb and listcoef

```. spex couart2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/couart2.dta", clear

. eststo zip: quietly zip art fem mar kid5 phd ment, ///
>                     inf(fem mar kid5 phd ment) nolog

. eststo zinb: quietly zinb art fem mar kid5 phd ment, ///
>                     inf(fem mar kid5 phd ment) nolog

. estadd listcoef fem ment : *

. estadd listcoef fem ment, percent nosd : *

. esttab, cell("b_facts b_pcts") keep(fem ment) mtitles

----------------------------------------------------------------
(1)                       (2)
zip                      zinb
b_facts       b_pcts      b_facts       b_pcts
----------------------------------------------------------------
art
fem              .9009586    -9.904139     .9071068    -9.289321
ment             1.187247     18.72472     1.264998     26.49976
----------------------------------------------------------------
inflate
fem              1.056254     5.625355     1.373176     37.31758
ment             .8457657    -15.42343     .4918765    -50.81235
----------------------------------------------------------------
N                     915                       915
----------------------------------------------------------------

. eststo clear
[do-file]
```

### zip/zinb and prchange: effects on rate

```. spex couart2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/couart2.dta", clear

. eststo zip: quietly zip art fem mar kid5 phd ment, ///
>                     inf(fem mar kid5 phd ment) nolog

. eststo zinb: quietly zinb art fem mar kid5 phd ment, ///
>                     inf(fem mar kid5 phd ment) nolog

. esttab, aux(dc) nopar wide mtitles

----------------------------------------------------------------------
(1)                          (2)
zip                         zinb
----------------------------------------------------------------------
art
fem                -0.209***       -0.380       -0.196**        -0.331
mar                 0.104           0.258       0.0976           0.164
kid5               -0.143**        -0.226       -0.152**        -0.198
phd              -0.00617         -0.0106    -0.000700        -0.00116
ment               0.0181***        0.594       0.0248***        0.422
_cons               0.641***                     0.417**
----------------------------------------------------------------------
inflate
fem                 0.110                        0.636
mar                -0.354                       -1.499
kid5                0.217                        0.628
phd               0.00127                      -0.0377
ment               -0.134**                     -0.882**
_cons              -0.577                       -0.192
----------------------------------------------------------------------
lnalpha
_cons                                           -0.976***
----------------------------------------------------------------------
N                     915                          915
----------------------------------------------------------------------
dc in second column
* p<0.05, ** p<0.01, *** p<0.001

. eststo clear
[do-file]
```

### zip/zinb and prchange: effects on probability of selected outcome

```. spex couart2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/couart2.dta", clear

. eststo zip0: quietly zip art fem mar kid5 phd ment, ///
>                     inf(fem mar kid5 phd ment) nolog

. eststo zinb0: quietly zinb art fem mar kid5 phd ment, ///
>                     inf(fem mar kid5 phd ment) nolog

. estadd prchange, outcome(0) : *0

. eststo zip1: quietly zip art fem mar kid5 phd ment, ///
>                     inf(fem mar kid5 phd ment) nolog

. eststo zinb1: quietly zinb art fem mar kid5 phd ment, ///
>                     inf(fem mar kid5 phd ment) nolog

. estadd prchange, outcome(1) : *1

. esttab, main(dc) nostar not scalars(outcome predval) mtitles

----------------------------------------------------------------
(1)          (2)          (3)          (4)
zip0        zinb0         zip1        zinb1
----------------------------------------------------------------
art
fem                0.0609       0.0547       0.0439       0.0229
mar               -0.0624      -0.0277      -0.0110      -0.0112
kid5               0.0429       0.0324       0.0198       0.0138
phd               0.00156     0.000186      0.00136    0.0000842
ment               -0.173      -0.0752      0.00357      -0.0238
----------------------------------------------------------------
N                     915          915          915          915
outcome                 0            0            1            1
predval             0.258        0.269        0.236        0.278
----------------------------------------------------------------
dc coefficients

. eststo clear
[do-file]
```

### zip/zinb and prvalue

```. spex couart2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/couart2.dta", clear

. eststo zip: quietly zip art fem mar kid5 phd ment, ///
>     inf(fem mar kid5 phd ment) nolog

zip: Predictions for art

Expected y:         1.7032
Pr(Always0|z):      0.1388
Pr(y=0|x,z):        0.2580
Pr(y=1|x):          0.2357
Pr(y=2|x):          0.2331
Pr(y=3|x):          0.1536
Pr(y=4|x):          0.0760
Pr(y=5|x):          0.0300
Pr(y=6|x):          0.0099
Pr(y=7|x):          0.0028
Pr(y=8|x):          0.0007
Pr(y=9|x):          0.0002

x values for count equation

fem        mar       kid5        phd       ment
x=  .46010929  .66229508  .49508197  3.1031093  8.7672131

z values for binary equation

fem        mar       kid5        phd       ment
z=  .46010929  .66229508  .49508197  3.1031093  8.7672131

. eststo zinb: quietly zinb art fem mar kid5 phd ment, ///
>     inf(fem mar kid5 phd ment) nolog

zinb: Predictions for art

Expected y:          1.701
Pr(Always0|z):      0.0002
Pr(y=0|x,z):        0.2687
Pr(y=1|x):          0.2784
Pr(y=2|x):          0.1987
Pr(y=3|x):          0.1204
Pr(y=4|x):          0.0665
Pr(y=5|x):          0.0346
Pr(y=6|x):          0.0172
Pr(y=7|x):          0.0083
Pr(y=8|x):          0.0039
Pr(y=9|x):          0.0018

x values for count equation

fem        mar       kid5        phd       ment
x=  .46010929  .66229508  .49508197  3.1031093  8.7672131

z values for binary equation

fem        mar       kid5        phd       ment
z=  .46010929  .66229508  .49508197  3.1031093  8.7672131

. estadd prvalue post, swap: *

. esttab, b(4) nostar not wide compress ///
>     mtitles eqlabels(none)

------------------------------
(1)       (2)
zip      zinb
------------------------------
Ey            1.7032    1.7010
All0          0.1388    0.0002
0|xy          0.2580    0.2687
1|x           0.2357    0.2784
2|x           0.2331    0.1987
3|x           0.1536    0.1204
4|x           0.0760    0.0665
5|x           0.0300    0.0346
6|x           0.0099    0.0172
7|x           0.0028    0.0083
8|x           0.0007    0.0039
9|x           0.0002    0.0018
------------------------------
N                915       915
------------------------------

. eststo clear
[do-file]
```

## Linear regression

### regress and fitstat/listcoef

```. spex regjob2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/regjob2.dta", clear

. quietly regress job fem phd ment fel art cit

Measures of Fit for regress of job

Log-Lik Intercept Only:       -567.512   Log-Lik Full Model:           -519.397
D(401):                       1038.793   LR(6):                          96.230
Prob > LR:                       0.000
AIC:                             2.580   AIC*n:                        1052.793
BIC:                         -1371.725   BIC':                          -60.162
BIC used by Stata:            1080.872   AIC used by Stata:            1052.793

e(dev) =  1038.7933
e(dev_df) =  401
e(lrx2) =  96.229915
e(lrx2_df) =  6
e(lrx2_p) =  1.533e-18
e(aic0) =  2.5803757
e(aic_n) =  1052.7933
e(bic0) =  -1371.7248
e(bic_p) =  -60.162312
e(statabic) =  1080.8722
e(stataaic) =  1052.7933
e(n_rhs) =  6
e(n_parm) =  7

regress (N=408): Unstandardized and Standardized Estimates

Observed SD: .97360294
SD of Error: .8717482

-------------------------------------------------------------------------------
job |      b         t     P>|t|    bStdX    bStdY   bStdXY      SDofX
-------------+-----------------------------------------------------------------
fem |  -0.13919   -1.543   0.124  -0.0680  -0.1430  -0.0698     0.4883
phd |   0.27268    5.529   0.000   0.2601   0.2801   0.2671     0.9538
ment |   0.00119    1.692   0.091   0.0778   0.0012   0.0799    65.5299
fel |   0.23414    2.469   0.014   0.1139   0.2405   0.1170     0.4866
art |   0.02280    0.789   0.430   0.0514   0.0234   0.0528     2.2561
cit |   0.00448    2.275   0.023   0.1481   0.0046   0.1521    33.0599
-------------------------------------------------------------------------------

e(b_xs) :  1 x 6      (bStdX)
e(b_ys) :  1 x 6      (bStdY)
e(b_std) :  1 x 6      (bStdXY)
e(b_sdx) :  1 x 6      (SDofX)

. esttab, aux(b_std) wide scalars(aic0 aic_n bic0 bic_p)

-----------------------------------------
(1)
job
-----------------------------------------
fem                -0.139       (-0.0698)
phd                 0.273***      (0.267)
ment              0.00119        (0.0799)
fel                 0.234*        (0.117)
art                0.0228        (0.0528)
cit               0.00448*        (0.152)
_cons               1.067***
-----------------------------------------
N                     408
aic0                2.580
aic_n              1052.8
bic0              -1371.7
bic_p              -60.16
-----------------------------------------
b_std in parentheses
* p<0.05, ** p<0.01, *** p<0.001
[do-file]
```

### regress and prvalue

```. spex regjob2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/regjob2.dta", clear

. quietly regress job fem phd ment fel art cit

regress: Predictions for job

95% Conf. Interval
Predicted y:        2.1795   [ 2.0743,    2.2846]

fem        phd       ment        fel        art        cit
x=  .38970588  3.2005637          0  .61764706  2.2769608  21.715686

regress: Predictions for job

95% Conf. Interval
Predicted y:        2.2334   [ 2.1488,     2.318]

fem        phd       ment        fel        art        cit
x=  .38970588  3.2005637  45.470584  .61764706  2.2769608  21.715686

updated matrices:

regress: Predictions for job

95% Conf. Interval
Predicted y:        2.8108   [ 2.1369,    3.4847]

fem        phd       ment        fel        art        cit
x=  .38970588  3.2005637  531.99988  .61764706  2.2769608  21.715686

updated matrices:

scalars:
e(N) =  408

macros:
e(depvar) : "job"
e(model) : "regress"
e(properties) : "b"

matrices:
e(b) :  1 x 3      (predictions)
e(se) :  1 x 3      (standard errors)
e(LB) :  1 x 3      (lower CI bounds)
e(UB) :  1 x 3      (upper CI bounds)
e(Category) :  1 x 3      (outcome values)
e(X) :  6 x 3      (fem, phd, ment, fel, art, cit)

. esttab, ci nostar wide eqlabels(none)

------------------------------------------------
(1)
job
------------------------------------------------
ment=min            2.179          [2.074,2.285]
ment=mean           2.233          [2.149,2.318]
ment=max            2.811          [2.137,3.485]
------------------------------------------------
N                     408
------------------------------------------------
95% confidence intervals in brackets
[do-file]
```

## Censored normal regression

### tobit and fitstat/listcoef

```. spex tobjob2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/tobjob2.dta", clear

. quietly tobit jobcen fem phd ment fel art cit, ll(1) nolog

Measures of Fit for tobit of jobcen

Log-Lik Intercept Only:       -604.850   Log-Lik Full Model:           -560.252
D(400):                       1120.504   LR(6):                          89.195
Prob > LR:                       0.000
ML (Cox-Snell) R2:               0.196   Cragg-Uhler(Nagelkerke) R2:      0.207
McKelvey & Zavoina's R2:         0.205
Variance of y*:                  1.488   Variance of error:               1.182
AIC:                             2.786   AIC*n:                        1136.504
BIC:                         -1284.003   BIC':                          -53.128
BIC used by Stata:            1168.594   AIC used by Stata:            1136.504

e(dev) =  1120.5042
e(dev_df) =  400
e(lrx2) =  89.195123
e(lrx2_df) =  6
e(lrx2_p) =  4.452e-17
e(r2_mf) =  .0737333
e(r2_ml) =  .19636934
e(r2_cu) =  .20704523
e(r2_mz) =  .20535921
e(v_ystar) =  1.4875706
e(v_error) =  1.1820843
e(aic0) =  2.7855494
e(aic_n) =  1136.5042
e(bic0) =  -1284.0027
e(bic_p) =  -53.12752
e(statabic) =  1168.5943
e(stataaic) =  1136.5042
e(n_rhs) =  6
e(n_parm) =  8

tobit (N=408): Unstandardized and Standardized Estimates

Observed SD: .97360294
Latent SD: 1.21966
SD of Error: 1.087237

-------------------------------------------------------------------------------
jobcen |      b         t     P>|t|    bStdX    bStdY   bStdXY      SDofX
-------------+-----------------------------------------------------------------
fem |  -0.23685   -2.032   0.043  -0.1156  -0.1942  -0.0948     0.4883
phd |   0.32258    5.047   0.000   0.3077   0.2645   0.2523     0.9538
ment |   0.00134    1.514   0.131   0.0880   0.0011   0.0722    65.5299
fel |   0.32527    2.656   0.008   0.1583   0.2667   0.1298     0.4866
art |   0.03391    0.929   0.353   0.0765   0.0278   0.0627     2.2561
cit |   0.00509    2.057   0.040   0.1683   0.0042   0.1380    33.0599
-------------------------------------------------------------------------------

e(b_xs) :  1 x 6      (bStdX)
e(b_ys) :  1 x 6      (bStdY)
e(b_std) :  1 x 6      (bStdXY)
e(b_sdx) :  1 x 6      (SDofX)

. esttab, aux(b_std) wide scalars(r2_mfadj r2_ml r2_cu r2_mz)

-----------------------------------------
(1)
jobcen
-----------------------------------------
model
fem                -0.237*      (-0.0948)
phd                 0.323***      (0.252)
ment              0.00134        (0.0722)
fel                 0.325**       (0.130)
art                0.0339        (0.0627)
cit               0.00509*        (0.138)
_cons               0.685**
-----------------------------------------
sigma
_cons               1.087***
-----------------------------------------
N                     408
r2_ml               0.196
r2_cu               0.207
r2_mz               0.205
-----------------------------------------
b_std in parentheses
* p<0.05, ** p<0.01, *** p<0.001
[do-file]
```

### cnreg and fitstat/listcoef

```. spex tobjob2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/tobjob2.dta", clear

. gen cens = -(jobcen<=1)

. quietly cnreg jobcen fem phd ment fel art cit, censored(cens) nolog

Measures of Fit for cnreg of jobcen

Log-Lik Intercept Only:       -604.850   Log-Lik Full Model:           -560.252
D(400):                       1120.504   LR(6):                          89.195
Prob > LR:                       0.000
ML (Cox-Snell) R2:               0.196   Cragg-Uhler(Nagelkerke) R2:      0.207
McKelvey & Zavoina's R2:         0.205
Variance of y*:                  1.488   Variance of error:               1.182
AIC:                             2.786   AIC*n:                        1136.504
BIC:                         -1284.003   BIC':                          -53.128
BIC used by Stata:            1168.594   AIC used by Stata:            1136.504

e(dev) =  1120.5042
e(dev_df) =  400
e(lrx2) =  89.195123
e(lrx2_df) =  6
e(lrx2_p) =  4.452e-17
e(r2_mf) =  .0737333
e(r2_ml) =  .19636934
e(r2_cu) =  .20704523
e(r2_mz) =  .20535921
e(v_ystar) =  1.4875706
e(v_error) =  1.1820843
e(aic0) =  2.7855494
e(aic_n) =  1136.5042
e(bic0) =  -1284.0027
e(bic_p) =  -53.12752
e(statabic) =  1168.5943
e(stataaic) =  1136.5042
e(n_rhs) =  6
e(n_parm) =  8

cnreg (N=408): Unstandardized and Standardized Estimates

Observed SD: .97360294
Latent SD: 1.21966
SD of Error: 1.087237

-------------------------------------------------------------------------------
jobcen |      b         t     P>|t|    bStdX    bStdY   bStdXY      SDofX
-------------+-----------------------------------------------------------------
fem |  -0.23685   -2.032   0.043  -0.1156  -0.1942  -0.0948     0.4883
phd |   0.32258    5.047   0.000   0.3077   0.2645   0.2523     0.9538
ment |   0.00134    1.514   0.131   0.0880   0.0011   0.0722    65.5299
fel |   0.32527    2.656   0.008   0.1583   0.2667   0.1298     0.4866
art |   0.03391    0.929   0.353   0.0765   0.0278   0.0627     2.2561
cit |   0.00509    2.057   0.040   0.1683   0.0042   0.1380    33.0599
-------------------------------------------------------------------------------

e(b_xs) :  1 x 6      (bStdX)
e(b_ys) :  1 x 6      (bStdY)
e(b_std) :  1 x 6      (bStdXY)
e(b_sdx) :  1 x 6      (SDofX)

. esttab, aux(b_std) wide scalars(r2_mfadj r2_ml r2_cu r2_mz)

-----------------------------------------
(1)
jobcen
-----------------------------------------
model
fem                -0.237*      (-0.0948)
phd                 0.323***      (0.252)
ment              0.00134        (0.0722)
fel                 0.325**       (0.130)
art                0.0339        (0.0627)
cit               0.00509*        (0.138)
_cons               0.685**
-----------------------------------------
sigma
_cons               1.087***
-----------------------------------------
N                     408
r2_ml               0.196
r2_cu               0.207
r2_mz               0.205
-----------------------------------------
b_std in parentheses
* p<0.05, ** p<0.01, *** p<0.001
[do-file]
```

### intreg and fitstat/listcoef

```. spex tobjob2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/tobjob2.dta", clear

. gen jobcen0 = jobcen if jobcen>1
(99 missing values generated)

. intreg jobcen0 jobcen fem phd ment fel art cit, nolog

Interval regression                               Number of obs   =        408
LR chi2(6)      =      89.20
Log likelihood = -560.25209                       Prob > chi2     =     0.0000

------------------------------------------------------------------------------
|      Coef.   Std. Err.      z    P>|z|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
fem |  -.2368486   .1165852    -2.03   0.042    -.4653513   -.0083458
phd |   .3225846   .0639229     5.05   0.000      .197298    .4478712
ment |   .0013436   .0008876     1.51   0.130     -.000396    .0030832
fel |   .3252657   .1224575     2.66   0.008     .0852534     .565278
art |   .0339053   .0365017     0.93   0.353    -.0376367    .1054474
cit |     .00509   .0024752     2.06   0.040     .0002388    .0099412
_cons |   .6854061   .2182717     3.14   0.002     .2576014    1.113211
-------------+----------------------------------------------------------------
/lnsigma |   .0836397   .0428043     1.95   0.051    -.0002552    .1675346
-------------+----------------------------------------------------------------
sigma |   1.087237   .0465384                      .9997449    1.182386
------------------------------------------------------------------------------

Observation summary:        99  left-censored observations
309     uncensored observations
0 right-censored observations
0       interval observations

Measures of Fit for intreg of jobcen0 jobcen

Log-Lik Intercept Only:       -604.850   Log-Lik Full Model:           -560.252
D(400):                       1120.504   LR(6):                          89.195
Prob > LR:                       0.000
ML (Cox-Snell) R2:               0.196   Cragg-Uhler(Nagelkerke) R2:      0.207
McKelvey & Zavoina's R2:         0.160
Variance of y*:                  1.408   Variance of error:               1.182
AIC:                             2.786   AIC*n:                        1136.504
BIC:                         -1284.003   BIC':                          -53.128
BIC used by Stata:            1168.594   AIC used by Stata:            1136.504

e(dev) =  1120.5042
e(dev_df) =  400
e(lrx2) =  89.195124
e(lrx2_df) =  6
e(lrx2_p) =  4.452e-17
e(r2_mf) =  .0737333
e(r2_ml) =  .19636935
e(r2_cu) =  .20704524
e(r2_mz) =  .16016798
e(v_ystar) =  1.4075249
e(v_error) =  1.1820845
e(aic0) =  2.7855494
e(aic_n) =  1136.5042
e(bic0) =  -1284.0027
e(bic_p) =  -53.127521
e(statabic) =  1168.5943
e(stataaic) =  1136.5042
e(n_rhs) =  6
e(n_parm) =  8

intreg (N=408): Unstandardized and Standardized Estimates

LHS vars: jobcen0 jobcen
Observed SD: .77904266
Latent SD: .48211618
SD of Error: .08363969

-------------------------------------------------------------------------------
|      b         t     P>|t|    bStdX    bStdY   bStdXY      SDofX
-------------+-----------------------------------------------------------------
fem |  -0.23685   -2.032   0.043  -0.1156  -0.4913  -0.2399     0.4883
phd |   0.32258    5.046   0.000   0.3077   0.6691   0.6382     0.9538
ment |   0.00134    1.514   0.131   0.0880   0.0028   0.1826    65.5299
fel |   0.32527    2.656   0.008   0.1583   0.6747   0.3283     0.4866
art |   0.03391    0.929   0.354   0.0765   0.0703   0.1587     2.2561
cit |   0.00509    2.056   0.040   0.1683   0.0106   0.3490    33.0599
-------------------------------------------------------------------------------

e(b_xs) :  1 x 6      (bStdX)
e(b_ys) :  1 x 6      (bStdY)
e(b_std) :  1 x 6      (bStdXY)
e(b_sdx) :  1 x 6      (SDofX)

. esttab, aux(b_std) wide scalars(r2_mfadj r2_ml r2_cu r2_mz)

-----------------------------------------
(1)
jobcen0
-----------------------------------------
model
fem                -0.237*       (-0.240)
phd                 0.323***      (0.638)
ment              0.00134         (0.183)
fel                 0.325**       (0.328)
art                0.0339         (0.159)
cit               0.00509*        (0.349)
_cons               0.685**
-----------------------------------------
lnsigma
_cons              0.0836
-----------------------------------------
N                     408
r2_ml               0.196
r2_cu               0.207
r2_mz               0.160
-----------------------------------------
b_std in parentheses
* p<0.05, ** p<0.01, *** p<0.001
[do-file]
```

### tobit/cnreg/intreg and prvalue

```. spex tobjob2

. use "http://www.indiana.edu/~jslsoc/stata/spex_data/tobjob2.dta", clear

. eststo tobit: quietly tobit jobcen fem phd ment fel art cit, ll(1) nolog

. gen cens = -(jobcen<=1)

. eststo cnreg: quietly cnreg jobcen fem phd ment fel art cit, censored(cens) n
> olog

. gen jobcen0 = jobcen if jobcen>1
(99 missing values generated)

. eststo intreg: quietly intreg jobcen0 jobcen fem phd ment fel art cit, nolog

. estadd prvalue, x(ment=min)  label(ment=min)  : *

. estadd prvalue, x(ment=mean) label(ment=mean) : *

. estadd prvalue, x(ment=max)  label(ment=max)  : *

. estadd prvalue post : *

. esttab, se nostar eqlabels(none) mtitles

---------------------------------------------------
(1)          (2)          (3)
tobit        cnreg       intreg
---------------------------------------------------
ment=min            2.014        2.014        2.014
(0.0695)     (0.0695)     (0.0695)

ment=mean           2.075        2.075        2.075
(0.0563)     (0.0563)     (0.0563)

ment=max            2.729        2.729        2.729
(0.435)      (0.435)      (0.435)
---------------------------------------------------
N                     408          408          408
---------------------------------------------------
Standard errors in parentheses

. eststo clear
[do-file]
```

The three models are formally equivalent in this case and, therefore, yield identical predictions.