*! version 1.1.2 25nov2011
help sfcrossalso see: sfcross postestimation

Title

sfcross -- Stochastic frontier models for cross-sectional data

Syntax

sfcross
depvar
[indepvars]
[if] [in]
[weight]
[, options]

Frontier
noconstant suppress constant term

distribution(exponential) exponential distribution for the inefficiency term, the default

distribution(hnormal) half-normal distribution for the
inefficiency term

distribution(tnormal) truncated-normal distribution for the inefficiency term

distribution(gamma) gamma distribution for the inefficiency term

Ancillary equations
emean(varlist_m [, noconstant]) fit
conditional mean model; only with d(tnormal); use noconstant to
suppress constant term

usigma(varlist_u [, noconstant]) specify explanatory
variables for the inefficiency variance function; use noconstant
to suppress constant term

vsigma(varlist_v [, noconstant]) specify explanatory
variables for the idiosyncratic error variance function; use noconstant
to suppress constant term

Starting values
svfrontier() specify a 1 X k vector of initial values for the coefficients of the frontier

svemean() specify a 1 X k_m vector of initial values for the coefficients of the conditional mean model; only with d(tnormal)

svusigma() specify a 1 X k_u vector of initial values for the coefficients of the inefficiency variance function

svvsigma() specify a 1 X k_v vector of initial values for the coefficients of the idiosyncratic error variance function

nosearch no attempt is made to improve on the initial values

restart select the random method to improve initial values

repeat(#) # of times the random values are tried; the default is 10

rescale determine rescaling of initial values

Other options
cost fit cost frontier model; default is production frontier
model

constraints(constraints) apply specified linear constraints

simtype(simtype) method to produce random draws for simulation; only with d(gamma)

nsimulations(#) # of draws; only with d(gamma)

base(#) prime number used as a base for Halton sequences generation; only with d(gamma) and simtype(halton) or simtype(genhalton)

SE
vce(vcetype) vcetype may be oim, opg, robust, cluster clustvar, bootstrap, or jackknife

robust synonym for vce(robust)

cluster(clustvar) synonym for vce(clusterclustvar)

Reporting
level(#) set confidence level; default is
level(95)

nocnsreport do not display constraints

nowarning do not display warning message "convergence not achieved"

postscore save observation-by-observation scores in the estimation results list

posthessian save the Hessian corresponding to the full set of coefficients in the estimation results list

display_options control spacing
and display of omitted variables and base and empty cells

Maximization
maximize_options control the maximization process; seldom used

+ coeflegend display coefficients' legend instead of coefficient table

simtype

runiform Uniformly distributed random variates

halton Halton sequence with base(#)

genhalton Generalized Halton sequence with base(#)

indepvars may contain factor variables; see fvvarlist.

bootstrap, by, jackknife, and svy
are allowed; see prefix.

Weights are not allowed with the bootstrap prefix.

aweights, fweights, iweights, and pweights are allowed;
see weight.

Description

sfcross fits stochastic production or cost frontier models; the default
is a production frontier model. It provides estimators for the parameters of
a linear model with a disturbance that is assumed to be a mixture of two components,
which have a strictly nonnegative and symmetric distribution, respectively.
sfcross can fit models in which the nonnegative distribution component
(a measurement of inefficiency) is assumed to be from a half-normal, exponential,
truncated-normal or gamma distribution. In the latter case, maximization is performed
through maximum simulated likelihood.

Options

Frontier

noconstant; see
[R] estimation options.

distribution(distname) specifies the distribution for the inefficiency term
as half-normal (hnormal), truncated-normal (tnormal) or exponential.
The default is exponential.

Ancillary equations

emean(varlist_m [,noconstant]) may be used only with distribution(tnormal).
With this option, sfcross specifies the mean of the truncated-normal distribution in terms of a linear function of the covariates defined in varlist_m. Specifying noconstant suppresses the constant in this function.

usigma(varlist_u [,noconstant])
specifies that the inefficiency component is heteroskedastic,
with the variance expressed as a function of the covariates defined in
varlist_u. Specifying noconstant suppresses the
constant in this function.

vsigma(varlist_v [,noconstant])
specifies that the idiosyncratic error component is heteroskedastic,
with the variance expressed as a function of the covariates defined in
varlist_v. Specifying noconstant suppresses the
constant in this function.

Starting values

svfrontier() specifies a 1 x k vector of initial values for the
coefficients of the frontier. The vector must have the
same length of the parameters vector to be estimated.

svemean() specifies a 1 x k_m vector of initial values for the
coefficients of the conditional mean model. This option cab be specified only with
distribution(tnormal).

svusigma() specifies a 1 X k_u vector of initial values for the
coefficients of the technical inefficiency variance function.

svvsigma() specifies a 1 X k_v vector of initial values for the
coefficients of the technical inefficiency variance function. This option cannot be specified
with distribution(gamma).

nosearch determines that no attempts are made to improve on the initial
values via a search technique. In this case, the initial values become the
starting values.

restart determines that the random method of improving initial values is
to be attempted. See also mf_moptimize

repeat(#) controls how many times random values are tried if the random method is turned
on. The default is 10.

rescale determines whether rescaling is attempted. Rescaling is a deterministic method.
It also usually improves initial values, and usually reduces the number of subsequent iterations
required by the optimization technique.

Other options

cost specifies that sfcross fits a cost frontier model.

constraints(constraints) applies specified linear constraints.

simtype(simtype) specifies the method to generate random draws with distribution(gamma).
runiform generates uniformly distributed random variates; halton and genhalton create
respectively Halton sequences and generalized Halton sequences where the base is expressed by the prime
number in base(#). runiform is the default. See also mf_halton for more details on Halton sequences generation.

nsimulations(#) specifies the number of draws for simulation when
distribution(gamma) is specified. The default is 250.

base(#) specifies the number, preferably a prime, used as a base for the generation of Halton sequences and
generalized Halton sequences when distribution(gamma) is specified. The default is 7. Note that Halton sequences
based on large primes (#>10) can be highly correlated, and their coverage
worse than that of pseudorandom uniform sequences.

SE

vce(vcetype) specifies the type of standard error reported,
which includes types that are derived from asymptotic theory and
that use bootstrap or jackknife methods; see
[R] vce_option.

Reporting

level(#); see
[R] estimation options.

nocnsreport; see
[R] estimation options.

nowarning specifies whether the warning message "convergence not achieved" should
not be displayed when this stopping rule is invoked. By default the message is displayed.

postscore saves an observation-by-observation matrix of scores in the estimation results list.
Scores are defined as the derivative of the objective function with respect to the parameters.
This option cannot be used when the size of the scores' matrix is greater than Stata matrix limit; see [R] limits.

posthessian saves the Hessian matrix corresponding to the full set of coefficients
in the estimation results list.

display_options:
noomitted,
vsquish,
noemptycells,
baselevels,
allbaselevels;
see [R] estimation options.

Maximization

maximize_options:
difficult,
technique(algorithm_spec),
iterate(#),
[no]log,
trace,
gradient,
showstep,
hessian,
showtolerance,
tolerance(#),
ltolerance(#),
nrtolerance(#),
nonrtolerance;
see [R] maximize.
These options are seldom used.

coeflegend; see
[R] estimation options.

Remarks

sveqname() specifies initial values for the coefficients of eqname. You can specify the initial values in one of three ways:
1) by specifying the name of a vector contained in the initial values (e.g. svfrontier(b0), where b0 is a conformable
vector); 2) by specifying coefficient names with the values in the same order as they appear in the command syntax
(e.g. svfrontier(x1=.5 x2=.3 _cons=1), if sfcross y x1 x2); 3) or by specifying a list of values
(e.g. svfrontier(.5 .3 1).

Examples

Setup

. webuse frontier1

Cobb-Douglas production function with exponential distribution for
inefficiency term

. sfcross lnoutput lnlabor lncapital

Cobb-Douglas production function with half-normal distribution for
inefficiency term

. sfcross lnoutput lnlabor lncapital, d(h)

Cobb-Douglas production function with quartiles of size as explanatory variable
in variance function for idiosyncratic error

. xtile qsize = size , nq(4)

. sfcross lnoutput lnlabor lncapital, vsigma(i.qsize)

Cobb-Douglas production function with gamma distribution for inefficiency term

. sfcross lnoutput lncapital lnlabor, d(gamma) rescale simtype(genha) nsim(100)

Cobb-Douglas production function with lnlabor, lncapital and quartiles of size
as explanatory variable of respectively the variance of the inefficiency term, the variance of the
idiosyncratic error and the truncated mean

. sfcross lnoutput lnlabor lncapital, d(tn) emean(i.qsize) usigma(lnlabor) vsigma( lncapital)

Setup

. webuse frontier2

Cost frontier model with exponential distribution for inefficiency
term with constraints on prices

. cons def 1 lnp_l+ lnp_k=1

. sfcross lncost lnout lnp_l lnp_k, cost constr(1)

Saved results

sfcross saves the following in e():

Scalars

e(N) number of observations

e(rank) rank of e(V)

e(k) number of parameters

e(k_eq) number of equations

e(k_dv) number of dependent variables

e(df_m) model degrees of freedom

e(ll) log likelihood

e(ll_c) log likelihood for H_0: sigma_u=0

e(converged) 1 if converged, 0 otherwise

e(ic) number of iterations

e(iterations) number of iterations, including initiali step

e(rc) return code

e(chi2) chi-squared

e(p) significance

e(chi2_c) LR test statistic

e(z) test for negative skewness of OLS residuals

e(p_z) p-value for z

e(k_autoCns) number of base, empty, and omitted constraints

e(sigma_u) standard deviation of technical inefficiency

e(sigma_v) standard deviation of V_i

e(g_shape) Shape parameter of the Gamma distributed inefficiency

e(avg_sigmau) average standard deviation of technical inefficiency

e(avg_sigmav) average standard deviation of V_i

e(lambda) signal to noise ratio

Macros

e(cmd) sfcross

e(cmdline) command as typed

e(title) title in estimation output

e(function) production or cost

e(depvar) name of dependent variable

e(covariates) name of independent variables

e(crittype) optimization criterion

e(dist) distribution assumption for U_i

e(het) heteroskedastic components

e(Emean) varlist in emean()

e(Usigma) varlist in usigma()

e(Vsigma) varlist in vsigma()

e(simtype) method to produce random draws

e(base) base number to generate Halton sequences

e(nsim) number of random draws

e(predict) program used to implement predict

e(opt) type of optimization

e(user) name of likelihood-evaluator program

e(ml_method) type of ml method

e(singularHmethod) m-marquardt or hybrid; method used when Hessian is singular

e(technique) maximization technique

e(which) max or min; whether optimizer is to perform maximization or minimization

e(wtype) weight type

e(wexp) weight expression

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

e(vce) vcetype specified in vce()

e(vcetype) title used to label Std. Err.

e(contraints) list of specified constraints

e(properties) b V

Matrices

e(b) coefficient vector

e(Cns) constraints matrix

e(ilog) iteration log (up to 20 iterations)

e(gradient) gradient vector

e(V) variance-covariance matrix of the estimators

e(V_modelbased) model-based variance

e(postscore) observation-by-observation scores

e(posthessian) Hessian corresponding to the full set of coefficients

Functions

e(sample) marks estimation sample

Authors

Federico Belotti

Centre for Economic and International Studies, University of Rome Tor Vergata

Rome, Italy

federico.belotti@uniroma2.it

Silvio Daidone

Centre for Health Economics, University of York

York, UK

silvio.daidone@york.ac.uk

Vincenzo Atella

Centre for Economic and International Studies, University of Rome Tor Vergata

Rome, Italy

atella@uniroma2.it

Giuseppe Ilardi

Economic and Financial Statistics Department, Bank of Italy

Rome, Italy

giuseppe.ilardi@bancaditalia.it

Also see

Help: sfcross_postestimation,
sfpanel,
sfpanel_postestimation.