BayES BayES

5.2 Inefficiency-effects stochastic frontier

Mathematical representation

yi = xiβ + v i ± ui,vi N 0, 1 τ ,ui D 𝜃,zi (5.2)

PIC When ui enters the specification with a plus sign then the model represents a cost frontier, while when ui enters with a minus sign the model represents a production frontier. For the efficiency scores generated by a stochastic frontier model to be meaningful, the dependent variable in both cases must be in logarithms.

Priors




Parameter Probability density function Default hyperparameters



Common to all models
β p β = |Pβ|12 2πK2 exp 1 2 βmβ P β βmβ mβ = 0K, Pβ = 0.001 IK
τ p τ = bτaτ Γaτ τaτ1eτbτ aτ = 0.001, bτ = 0.001
Exponential model
δ p δ = |Pδ|12 2πL2 exp 1 2 δmδ P δ δmδ mδ = 0L, Pδ = 0.01 IL
Truncated normal model
δ p δ = |Pδ|12 2πL2 exp 1 2 δmδ P δ δmδ mδ = 0L, Pδ = 0.01 IL
ϕ p ϕ = bϕaϕ Γaϕ ϕaϕ1eϕbϕ a ϕ = 4, bϕ = 0.5



Syntax

[<model name> = ] sf( y ~ x1 x2  xK | z1 z2  zL [, <options>] );

where:

The optional arguments for the inefficiency-effects stochastic frontier model are:2

Gibbs parameters


"chains"

number of chains to run in parallel (positive integer); the default value is 1

"burnin"

number of burn-in draws per chain (positive integer); the default value is 10000

"draws"

number of retained draws per chain (positive integer); the default value is 20000

"thin"

value of the thinning parameter (positive integer); the default value is 1

"seed"

value of the seed for the random-number generator (positive integer); the default value is 42

Model specification


"udist"

specification of the distribution of the inefficiency component of the error term; the following options are available, corresponding to the distributions presented at the beginning of this section:

  • "exp"
  • "tnorm"

the default value is "exp"

"production"

boolean specifying the type of frontier (production/cost); it could be set to either true (production) or false (cost); the default value is true

Hyperparameters


Common to all models

"m_beta"

mean vector of the prior for β (K ×1 vector); the default value is 0K

"P_beta"

precision matrix of the prior for β (K ×K symmetric and positive-definite matrix); the default value is 0.001 IK

"a_tau"

shape parameter of the prior for τ (positive number); the default value is 0.001

"b_tau"

rate parameter of the prior for τ (positive number); the default value is 0.001

Exponential model

"m_delta"

mean vector of the prior for δ (L ×1 vector); the default value is 0L

"P_delta"

precision matrix of the prior for δ (L ×L symmetric and positive-definite matrix); the default value is 0.01 IL

Truncated normal model

"m_delta"

mean vector of the prior for δ (L ×1 vector); the default value is 0L

"P_delta"

precision matrix of the prior for δ (L ×L symmetric and positive-definite matrix); the default value is 0.01 IL

"a_phi"

shape parameter of the prior for ϕ (positive number); the default value is 4

"b_phi"

rate parameter of the prior for ϕ (positive number); the default value is 0.5

Dataset and log-marginal likelihood


"dataset"

the id value of the dataset that will be used for estimation; the default value is the first dataset in memory (in alphabetical order)

"logML_CJ"

boolean indicating whether the Chib (1995)/Chib & Jeliazkov (2001) approximation to the log-marginal likelihood should be calculated (true|false); the default value is false

Reported Parameters




Common to all models



β

variable_name

vector of parameters associated with the independent variables in the x list




τ

tau

precision parameter of the noise component of the error term, vi




σv

sigma_v

standard deviation of the noise component of the error term, σv = 1τ12




Exponential model



δ

variable_name

vector of parameters associated with the independent variables in the z list




Truncated normal model



δ

variable_name

vector of parameters associated with the independent variables in the z list




ϕ

phi

precision parameter of the distribution of the inefficiency component of the error term, ui




σu

sigma_u

scale parameter of the inefficiency component of the error term: σu = 1ϕ12.




Stored values and post-estimation analysis
If a left-hand-side id value is provided when an inefficiency-effects stochastic frontier model is created, then the following results are saved in the model item and are accessible via the ‘.’ operator:

Samples

a matrix containing the draws from the posterior of β and τ, and, depending on the estimated model, δ, or δ and ϕ

y$x1,,y$xK

vectors containing the draws from the posterior of the parameters associated with variables x1,,xK (the names of these vectors are the names of the variables that were included in the right-hand side of the model, prepended by y$, where y is the name of the dependent variable; this is done so that the samples on the parameters associated with a variable that appears in both x and z lists can be distinguished)

tau

vector containing the draws from the posterior of τ

u$z1,,u$zL

vectors containing the draws from the posterior of the parameters associated with variables z1,,zL (the names of these vectors are the names of the variables that were included in the z list, in the right-hand side of the model, prepended by u$; this is done so that the samples on the parameters associated with a variable that appears in both x and z lists can be distinguished)

phi

vector containing the draws from the posterior of ϕ (available after the estimation of the truncated-normal model)

logML

the Lewis & Raftery (1997) approximation of the log-marginal likelihood

logML_CJ

the Chib (1995)/Chib & Jeliazkov (2001) approximation to the log-marginal likelihood; this is available only if the model was estimated with the "logML_CJ"=true option

eff_i

N ×1 vector that stores the expected values of the observation-specific efficiency scores, E eui; the values in this vector are not guaranteed to be in the same order as the order in which the observations appear in the dataset used for estimation; use the store() function to associate the values in eff_i with the observations in the dataset

nchains

the number of chains that were used to estimate the model

nburnin

the number of burn-in draws per chain that were used when estimating the model

ndraws

the total number of retained draws from the posterior ( =chains draws)

nthin

value of the thinning parameter that was used when estimating the model

nseed

value of the seed for the random-number generator that was used when estimating the model

Additionally, the following functions are available for post-estimation analysis (see section B.14):

The inefficiency-effects stochastic frontier model uses the store() function to associate the estimates of the efficiency scores (eff_i) with specific observations and store their values in the dataset used for estimation. The generic syntax for a statement involving the store() function after estimation of an inefficiency-effects stochastic frontier model is:

store( eff_i, <new variable name> [, "model"=<model name>] );

The inefficiency-effects stochastic frontier model uses the mfx() function to calculate and report the marginal effects of the variables in the z list on the expected value of u and on the expected value of the efficiency score ( = eu). The two types of marginal effects can be requested by setting the "type" argument of the mfx() function equal to 1 or 2. The generic syntax for a statement involving the mfx() function after estimation of an inefficiency-effects stochastic frontier model is:

mfx( ["type"=1] [, "point"=<point of calculation>] [, "model"=<model name>] );

and:

mfx( "type"=2 [, "point"=<point of calculation>] [, "model"=<model name>] );

for calculation of the marginal effects on E u and on E eu, respectively. The default value of the "type" option is 1. See the general documentation of the mfx() function (section B.14) for details on the other optional arguments.

Examples

Example 1

myData = import("$BayESHOME/Datasets/dataset3.csv", ","); 
myData.constant = ones(rows(myData), 1); 
 
sf( y ~ constant x2 x3 x4 | constant z2 z3, "production"=false );

Example 2

myData = import("$BayESHOME/Datasets/dataset3.csv", ","); 
myData.constant = ones(rows(myData), 1); 
 
expSF = sf( y ~ constant x2 x3 x4 | constant z2 z3, 
    "udist"="exp", "production"=false ); 
 
tnormSF = sf( y ~ constant x2 x3 x4 | constant z2 z3, 
    "udist"="tnorm", "production"=false ); 
 
store( eff_i, eff_exp, "model" = expSF ); 
store( eff_i, eff_tnorm, "model" = tnormSF ); 
 
mfx( "point"="mean", "model"=expSF, "type"=1 ); 
mfx( "point"="mean", "model"=tnormSF, "type"=1 ); 
 
mfx( "point"="mean", "model"=expSF, "type"=2 ); 
mfx( "point"="mean", "model"=tnormSF, "type"=2 ); 
 
pmp( { expSF, tnormSF } );

2Optional arguments are always given in option-value pairs (eg. "chains"=3).

Share this content:
Facebook Twitter LinkedIn Email
© 2016–20 Grigorios Emvalomatis