*! version 3.0.3 17feb2017
help probitfe

Title

probitfe -- Analytical and Jackknife bias
corrections for fixed effects estimators of panel probit models
with individual and time effects

Syntax

Uncorrected (NC) estimator

probitfe depvar [indepvars] [if] [in]
, nocorrection [NC_options]

Analytical-corrected (AC) estimator

probitfe depvar [indepvars] [if] [in]
[, analytical AC_options]

Jackknife-corrected (JC) estimator

probitfe depvar [indepvars] [if] [in]
, jackknife [JC_options]

NC_options

Estimator
nocorrection compute the uncorrected
estimator

Type of Included Effects
ieffects(string) select whether the uncorrected
estimator includes individual effects; yes (the default)
or no

teffects(string) select whether the uncorrected
estimator includes time effects; yes (the default) or
no

Finite Population Correction
population(integer) adjust the variance of
the Average Partial Effects by a finite population correction
using the population size declared by the user

AC_options

Estimator
analytical the default, use analytical bias
correction

Trimming Parameter
lags(integer) specifies the value of the trimming parameter to estimate spectral
expectations. The default is lags(0)

Type of Included Effects
ieffects(string) select whether the uncorrected
estimator includes individual effects; yes (the default)
or no

teffects(string) select whether the uncorrected
estimator includes time effects; yes (the default) or
no

Type of Correction
ibias(string) select whether the analytical
correction accounts for individual effects; yes (the default)
or no

tbias(string) select whether the analytical
correction accounts for time effects; yes (the default) or
no

Finite Population Correction
population(integer) adjust the variance of
the Average Partial Effects by a finite population correction
using the population size declared by the user

JC_options

Estimator
jackknife use a panel jackknife technique
to correct the bias

# of Partitions
ss1 split jackknife in four subpanels, leaving half
individuals and half time periods out in each subpanel

ss2 the default, split jackknife in both dimensions,
leaving half panel out and including either all time periods or all individuals

js delete-one jackknife in cross-section, split
panel jackknife in time-series

sj split panel jackknife in cross-section, delete-one
jackknife in time-series

jj delete-one jackknife in both cross-section and
time-series

double delete-one jackknife for observations with the
same index in the cross-section and the time-series (see options below for details)

ss1 Suboptions
multiple(integer) allow for multiple partitions,
each one made on a randomization of the observations in the
panel; the default is zero (the partitions are made on the original order in the data set)

individuals select whether the multiple partitions are
made only on the cross-sectional dimension

time select whether the multiple partitions are made
only on the time dimension

ss2 Suboptions
multiple(integer) allow for multiple partitions,
each one made on a randomization of the observations in the
panel; the default is zero (the partitions are made on the original order in the data set)

individuals select whether the multiple partitions are
made only on the cross-sectional dimension

time select whether the multiple partitions are made
only on the time dimension

Type of Included Effects
ieffects(string) select whether the uncorrected
estimator includes individual effects; yes (the default)
or no

teffects(string) select whether the uncorrected
estimator includes time effects; yes (the default) or
no

Type of Correction
ibias(string) select whether the split jackknife correction
accounts for individual effects; yes (the default) or no

tbias(string) select whether the split jackknife correction
accounts for time effects; yes (the default) or no

Finite Population Correction
population(integer) adjust the variance of
the Average Partial Effects by a finite population correction
using the population size declared by the user

Both, a panel variable and a time variable must be specified.
Use tsset.

indepvars may contain factor variables; see fvvarlist.

depvar and indepvars may contain time-series operators; see tsvarlist.

Description

probitfe fits a probit fixed-effects estimator that can include individual
and/or time effects, and account for both the bias arising from the inclusion
of individual fixed-effects and/or the bias arising from the inclusion of
time fixed-effects.
probitfe with the nocorrection option does not correct
for the incidental parameter bias problem (Neyman and Scott, 1948).

probitfe with the analytical option removes an analytical estimate
of the bias from the probit fixed-effects estimator using the
expressions derived in Fernandez-Val and Weidner (2013). The
trimming parameter can be set to any value between 0 and (T-1), where
T is the number of time periods.

probitfe with the jackknife option removes a jackknife estimate
of the bias from the fixed effects estimator. This method is based on the delete-one
panel jackknife of Hahn and Newey (2004) and split panel jackknife of
Dhaene and Jochmans (2010) as described in Fernandez-Val and Weidner (2013).

probitfe displays estimates of Index Coefficients
and Average Partial Effects.

Options for NC estimator

Estimator

nocorrection computes the probit fixed-effects estimator
without correcting for the bias
due to the incidental parameter problem.

Type of Included Effects

ieffects(string) specifies whether the uncorrected estimator
includes individual effects.

ieffects(yes), the default, includes
individual fixed-effects.

ieffects(no) omits the individual fixed-effects.

teffects(string) specifies whether the uncorrected estimator
includes time effects.

teffects(yes), the default, includes
time fixed-effects.

teffects(no) omits the time fixed-effects.

If the nocorrection option without type of included effects is specified then
the model will include both individual and
time effects. ieffects(no) and teffects(no) is an invalid
option.

Finite Population Correction

population(integer) adjusts the estimation of the variance of the Average
Partial Effects (APE's) by a finite population correction. Let m be the number of original
observations included in probitfe, and M>=m the number of observations
for the entire population declared by the user. The computation of the variance
of the APE's is corrected by the factor fpc=(M-m)/(M-1). The default is fpc=1, corresponding to an infinity population.
Notice that M makes reference to the total number of observations and not the total
number of individuals. If, for example, the population has 100 individuals followed
over 10 time periods, the user must use population(1000) instead of
population(100).

Options for AC estimator

Estimator

analytical, the default, computes the probit fixed-effects estimator
using the analytical bias correction derived in Fernandez-Val and Weidner (2013).

Trimming Parameter

lags(integer) specifies the value of the trimming parameter to estimate spectral
expectations, see Fernandez-Val and Weidner (2013) for the details.
The default if lags(0). This option should be used when the model is
static with strictly exogeneous regressors.
The trimming parameter can be set to any value between 0 and (T-1), where T
denotes the number of time periods. A trimming parameter higher than 0 should be
used when the model is dynamic or some of the regressors is weakly exogenous or predetermined.
We do not recommend to set the value of the trimming parameter to a value
higher than 4.

Type of Included Effects

ieffects(string) specifies whether the estimator
includes individual effects.

ieffects(yes), the default, includes
individual fixed-effects.

ieffects(no) omits the individual fixed-effects.

teffects(string) specifies whether the estimator
includes time effects.

teffects(yes), the default, includes
time fixed-effects.

teffects(no) omits the time fixed-effects.

If the analytical option without type of included effects is specified then
the model will include both individual and
time effects. ieffects(no) and teffects(no) is an invalid
option.

Type of Correction

ibias(string) specifies whether the analytical correction accounts
for individual effects.

ibias(yes), the default, corrects for the bias coming from the
individual fixed-effects.

ibias(no) omits the individual fixed-effects analytical bias
correction.

tbias(string) specifies whether the analytical correction accounts
for time effects.

tbias(yes), the default, corrects for the bias coming from the
time fixed-effects.

tbias(no) omits the time fixed-effects analytical bias correction.

If the analytical option without type of correction is specified then
the model will include analytical bias correction for both individual and
time effects. ibias(no) and tbias(no) is an invalid
option.

Finite Population Correction

population(integer) adjusts the estimation of the variance of the Average
Partial Effects (APE's) by a finite population correction. Let m be the number of original
observations included in probitfe, and M>=m the number of observations
for the entire population declared by the user. The computation of the variance
of the APE's is corrected by the factor fpc=(M-m)/(M-1). The default is fpc=1, corresponding to an infinity population.
Notice that M makes reference to the total number of observations and not the total
number of individuals. If, for example, the population has 100 individuals followed
over 10 time periods, the user must use population(1000) instead of
population(100).

Options for JC estimator

Estimator

jackknife computes the probit fixed effects estimator using the jackknife bias corrections described
in Fernandez-Val and Weidner (2013).

# of Partitions

ss1 specifies split panel jackknife in four nonoverlapping subpanels; in each subpanel
half of the individuals and half of the time periods are left out and
the uncorrected fixed effects estimator is computed in each subpanel. Let b be the
uncorrected estimator using the whole sample, and b1,...,b4
be the uncorrected estimators in each subpanel. The ss1 estimator
is given by 2*b - (b1 + b2 + b3 + b4)/4.

multiple(integer) is a ss1 suboption that allows for different
multiple partitions, each one made on a randomization of the
observations in the panel; the default is zero, i.e. the partitions are made on the
original order in the data set. If multiple(10)
is specified, for example, then the ss1 estimator is computed 10 times
on 10 different randomizations of the observations in the panel; the
resulting estimator is the mean of these 10 split panel jackknife corrections.
This option can be used if there is a dimension of the panel where there is no
natural ordering of the observations.

individuals specifies the multiple partitions to be made only on the
cross-sectional dimension.

time specifies the multiple partitions to be made only on the time
dimension.

If neither individuals nor time options are specified, the multiple
partitions are made on both the cross-sectional and the time dimensions.

ss2, the default, specifies split jackknife in both dimensions.
As in ss1, there are four subpanels: in subpanel 1 and
subpanel 2 half of the individuals are left out but all time periods
are included in the fixed-effects estimations; in subpanel 3 and
subpanel 4 half of the time periods are left out but all the
individuals are included in the fixed-effects estimations. Let b
be the uncorrected estimator using the whole sample, b1 the mean
of the uncorrected estimator in subpanels 1 and 2, and b2 the mean
of the uncorrected estimator in subpanels 3 and 4. The ss2 estimator
is given by 3*b - b1 - b2.

multiple(integer) is a ss2 suboption that allows for different
multiple partitions, each one made on a randomization of the
observations in the panel; the default is zero, i.e. the partitions are made on the
original order in the data set. If multiple(10)
is specified, for example, then the ss2 estimator is computed 10 times
on 10 different randomizations of the observations in the panel; the
resulting estimator is the mean of these 10 split panel jackknife corrections.
This option can be used if there is a dimension of the panel where there is no
natural ordering of the observations.

individuals specifies the multiple partitions to be made only on the
cross-sectional dimension, that is the randomization affects only subpanels
1 and 2.

time specifies the multiple partitions to be made only on the time
dimension, that is the randomization affects only subpanels 3 and 4.

If neither individuals nor time options are specified, the multiple
partitions are made on both the cross-sectional and the time dimensions.

js uses delete-one panel jackknife in the cross-section and split panel jackknife
in the time series. There are N + 2 subpanels, one for each of the
N-individuals and two subpanels in which half of the time periods are left out.
Let b be the uncorrected fixed effects estimator that uses the whole
sample, b1 be the mean of the N uncorrected fixed effects estimators
for each of the N subpanels in which one individual is left out, and b2
be the mean of the two subpanels in which half of the time periods are left out.
The js estimator is given by (N+1)*b-(N-1)*b1-b2. When N is
large, this estimator might be computationally intensive.

sj uses split panel jackknife in the cross-section and delete-one panel jackknife
in the time series. There are T + 2 subpanels, one for each of the
T-time periods and two subpanels in which half of the individuals are left out.
Let b be the uncorrected fixed effects estimator that uses the whole
sample, b1 be the mean of the T uncorrected fixed effects estimators
for each of the T subpanels in which one time period is left out, and b2
be the mean of the two subpanels in which half of the individuals are left out.
The sj estimator is given by (T+1)*b-(T-1)*b1-b2. When T is
large, this estimator might be computationally intensive.

jj uses delete-one jackknife in both the cross-section and the time
series. There are N + T subpanels, one for each of the N-individuals and one
for each of the T time periods. Let b be the uncorrected fixed effects
estimator that uses the whole sample, b1 be the mean of the N uncorrected
fixed-effects estimators for each of the N subpanels in which one individual
is left out, and b2 be the mean of the T uncorrected fixed effects
estimators for each of the T subpanels in which one time period
is left out. The jj estimator is given by (N+T-1)*b-(N-1)*b1-(T-1)*b2.
When either N or T are large, this estimator might be
computationally intensive.

double uses delete-one jackknife for observations with the same cross-section
and the time-series indexes. This type of correction makes sense for panels where
i and t index the same entities. For example, in country trade data, the cross-section dimension
represents each country as an importer, and the time-series dimension represents each
country as an exporter. In this case, double constructs each subpanel by dropping one country
(both as an importer and as an exporter). Let i=1,...,N denote one dimension of the panel
and let t=1,...,N denote the other dimension. double uses delete-one
jackknife for the M<=N subpanels for which i=t. Let b be the uncorrected fixed
effects estimator that uses the whole sample, and b1 be the mean of the M uncorrected
fixed-effects estimators for each of the M<=N subpanels in which i=t.
The double estimator is given by M*b-(M-1)*b1.
When M is large, this estimator can be computationally intensive.

Type of Included Effects

ieffects(string) specifies whether the estimator
includes individual effects.

ieffects(yes), the default, includes
individual fixed-effects.

ieffects(no) omits the individual fixed-effects.

teffects(string) specifies whether the estimator
includes time effects.

teffects(yes), the default, includes
time fixed-effects.

teffects(no) omits the time fixed-effects.

If the jackknife option without type of included effects is specified
then the model will include both individual and
time effects. ieffects(no) and teffects(no) is an invalid
option.

Type of Correction

ibias(string) specifies whether the jackknife correction accounts
for the individual effects.

ibias(yes), the default, corrects for the bias coming from the
individual fixed-effects.

ibias(no) omits the individual fixed-effects jackknife correction.
If this option and multiple partitions only in the time-dimension are
specified togeteher (for the jackknife ss1/ss2 corrections), the
resulting estimator is equivalent to the one without multiple partitions.

tbias(string) specifies whether the jackknife correction accounts
for the time effects.

tbias(yes), the default, corrects for the bias coming from the time
fixed-effects.

tbias(no) omits the time fixed-effects jackknife correction.
If this option and multiple partitions only in the cross-section are
specified togeteher (for the jackknife ss1/ss2 corrections), the
resulting estimator is equivalent to the one without multiple partitions.

If the jackknife option without type of correction is specified
then the model will include jackknife correction for both individual and
time effects. ibias(no) and tbias(no) is an invalid
option.

Finite Population Correction

population(integer) adjusts the estimation of the variance of the Average
Partial Effects (APE's) by a finite population correction. Let m be the number of original
observations included in probitfe, and M>=m the number of observations
for the entire population declared by the user. The computation of the variance
of the APE's is corrected by the factor fpc=(M-m)/(M-1). The default is fpc=1, corresponding to an infinite population.
Notice that M makes reference to the total number of observations and not the total
number of individuals. If, for example, the population has 100 individuals followed
over 10 time periods, the user must use population(1000) instead of
population(100).

Examples

Setup

. webuse lfp_psid

. tsset ID1979 year

Uncorrected estimator: static model with individual and time effects

. probitfe lfp kids0_2 kids3_5 kids6_17 loghusbandincome age age2, noc

Uncorrected estimator: static model with individual effects

. probitfe lfp kids0_2 kids3_5 kids6_17 loghusbandincome age age2, noc teffects(no)

Uncorrected estimator: static model with time effects

. probitfe lfp kids0_2 kids3_5 kids6_17 loghusbandincome age age2, noc ieffects(no)

Uncorrected estimator: dynamic model with individual and time effects

. probitfe lfp L.lfp kids0_2 kids3_5 kids6_17 loghusbandincome age age2, noc

Analytcal-corrected estimator: static model with individual and time effects and trimming parameter set to zero

. probitfe lfp kids0_2 kids3_5 kids6_17 loghusbandincome age age2, an l0

Analytcal-corrected estimator: dynamic model with individual and time effects and trimming parameter set to one (the default)

. probitfe lfp L.lfp kids0_2 kids3_5 kids6_17 loghusbandincome age age2

. probitfe lfp L.lfp kids0_2 kids3_5 kids6_17 loghusbandincome age age2, an l1

Analytcal-corrected estimator: dynamic model with individual and time effects and trimming parameter set to one. Use finite population
correction asuming population equal to number of observations in the data set

. probitfe lfp L.lfp kids0_2 kids3_5 kids6_17 loghusbandincome age age2

. local N = e(N) + e(N_drop)

. probitfe lfp L.lfp kids0_2 kids3_5 kids6_17 loghusbandincome age age2, pop(`N')

Jackknife-corrected estimator: static model with individual and time effects using option ss1

. probitfe lfp kids0_2 kids3_5 kids6_17 loghusbandincome age age2, jack ss1

Jackknife-corrected estimator: static model with individual and time effects using option ss2

. probitfe lfp kids0_2 kids3_5 kids6_17 loghusbandincome age age2, jack ss2

Jackknife-corrected estimator: static model with individual and time effects using option ss2. Five
multiple partitions in both the cross-section and the time dimension

. probitfe lfp kids0_2 kids3_5 kids6_17 loghusbandincome age age2, jack ss2 mul(5)

Jackknife-corrected estimator: static model with individual and time effects using option ss2. Five
multiple partitions in the cross-section only

. probitfe lfp kids0_2 kids3_5 kids6_17 loghusbandincome age age2, jack ss2 mul(5) i

Jackknife-corrected estimator: static model with individual and time effects using option ss2. Five
multiple partitions in the time dimension only

. probitfe lfp kids0_2 kids3_5 kids6_17 loghusbandincome age age2, jack ss2 mul(5) t

Jackknife-corrected estimator: static model with individual and time effects using option js

. probitfe lfp kids0_2 kids3_5 kids6_17 loghusbandincome age age2, jack js

Jackknife-corrected estimator: static model with individual and time effects using option jj

. probitfe lfp kids0_2 kids3_5 kids6_17 loghusbandincome age age2, jack jj

Jackknife-corrected estimator: static model with individual and time effects using option double

. webuse trade

. tsset id jd

. g islands2 = islands==2

. g landlock2 = landlock==2

. probitfe trade ldist border legal language colony currency fta islands2 religion landlock2, jack double

Saved results

probitfe saves the following in e():

Scalars

e(N) number of observations

e(N_drop) number of observations dropped because of all positive or all zero outcomes

e(N_group_drop) number of groups dropped because of all positive or all zero outcomes

e(N_time_drop) number of time periods dropped because of all positive or all zero outcomes

e(N_group) number of groups

e(T_min) smallest group size

e(T_avg) average group size

e(T_max) largest group size

e(k) number of parameters excluding individual and/or time effects

e(df_m) model degrees of freedom

e(r2_p) pseudo R-squared

e(chi2) likelihood-ratio chi-squared model test

e(p) significance of model test

e(rankV) rank of e(V)

e(rankV2) rank of e(V2)

e(ll) log-likelihood

e(ll_0) log-likelihood, constant-only model

e(fpc) finite population correction factor

Macros

e(cmd) probitfe

e(cmdline) command as typed

e(depvar) name of dependent variable

e(title) title in estimation output

e(title1) type of included effects

e(title2) type of correction

e(title3) lags for trimming parameter/number of multiple partitions

e(chi2type) LR; type of model chi-squared test

e(properties) b V

e(id) name of cross-section variable

e(time) name of time variable

Matrices

e(b) coefficient vector

e(b2) average partial effects

e(V) variance-covariance matrix of coefficient vector

e(V2) variance-covariance matrix of average partial effects

Functions

e(sample) marks estimation sample

Reference

Ivan Fernandez-Val and Martin Weidner. Individual and time effects in nonlinear panel models with large N, T.
November 28, 2013.

Neyman, J. and Scott, E.L., 1948. Consistent estimation from partially consistent observations. Econometrica
16, 1-32.

Dhaene, Geert and Jochmans, Koen, 2010. Split-panel jackknife estimation of fixed-effect models.
Forthcoming in Review of Economic Studies.

Jinyong Hahn and Whitney Newey, 2004. Jackknife and Analytical Bias Reduction for Nonlinear Panel Models.
Econometrica 72, 4, 1295-1319.

Remarks

This is a first and preliminary version. Please feel free to share your comments, reports of bugs and
propositions for extensions.

If you use this command in your work, please cite Ivan Fernandez-Val and Martin Weidner (2013).

Disclaimer

THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.
SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

IN NO EVENT WILL THE COPYRIGHT HOLDERS OR THEIR EMPLOYERS, OR ANY OTHER PARTY WHO
MAY MODIFY AND/OR REDISTRIBUTE THIS SOFTWARE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM.

Authors

Mario Cruz Gonzalez, Ivan Fernandez-Val and Martin Weidner

Boston University, Boston University and University College London

mgonza@bu.edu