This example illustrates the estimation of stochastic frontier production and cost models.
First, a production function model is estimated. The data for this example were collected by Christensen Associates; they
represent a sample of 125 observations on inputs and output for 10 airlines between 1970 and 1984. The explanatory variables
(inputs) are fuel (LF
), materials (LM
), equipment (LE
), labor (LL
), and property (LP
), and (LQ
) is an index that represents passengers, charter, mail, and freight transported.
The following statements create the dataset:
title1 'Stochastic Frontier Production Model'; data airlines; input TS FIRM NI LQ LF LM LE LL LP; datalines; 1 1 15 -0.0484 0.2473 0.2335 0.2294 0.2246 0.2124 1 1 15 -0.0133 0.2603 0.2492 0.241 0.2216 0.1069 2 1 15 0.088 0.2666 0.3273 0.3365 0.2039 0.0865 3 1 15 0.1619 0.3019 0.4573 0.3532 0.2346 0.0242 ... more lines ...
The following statements estimate a stochastic frontier exponential production model that uses Christensen Associates data:
/*-- Stochastic Frontier Production Model --*/ proc qlim data=airlines; model LQ=LF LM LE LL LP; endogenous LQ ~ frontier (type=exponential production); run;
Output 22.7.1 shows the results from this production model.
Output 22.7.1: Stochastic Frontier Production Model
Stochastic Frontier Production Model |
Model Fit Summary | |
---|---|
Number of Endogenous Variables | 1 |
Endogenous Variable | LQ |
Number of Observations | 125 |
Log Likelihood | 83.27815 |
Maximum Absolute Gradient | 9.83602E-6 |
Number of Iterations | 19 |
Optimization Method | Quasi-Newton |
AIC | -150.55630 |
Schwarz Criterion | -127.92979 |
Sigma | 0.12445 |
Lambda | 0.55766 |
Parameter Estimates | |||||
---|---|---|---|---|---|
Parameter | DF | Estimate | Standard Error | t Value | Approx Pr > |t| |
Intercept | 1 | -0.085048 | 0.024528 | -3.47 | 0.0005 |
LF | 1 | -0.115802 | 0.124178 | -0.93 | 0.3511 |
LM | 1 | 0.756253 | 0.078755 | 9.60 | <.0001 |
LE | 1 | 0.424916 | 0.081893 | 5.19 | <.0001 |
LL | 1 | -0.136421 | 0.089702 | -1.52 | 0.1283 |
LP | 1 | 0.098967 | 0.042776 | 2.31 | 0.0207 |
_Sigma_v | 1 | 0.108688 | 0.010063 | 10.80 | <.0001 |
_Sigma_u | 1 | 0.060611 | 0.017603 | 3.44 | 0.0006 |
Similarly, the stochastic frontier production function can be estimated with (type=half
) or (type=truncated
) options that represent half-normal and truncated normal production models.
In the next step, stochastic frontier cost function is estimated. The data for the cost model are provided by Christensen and Greene (1976). The data describe costs and production inputs of 145 U.S. electricity producers in 1955. The model being estimated follows the nonhomogenous version of the Cobb-Douglas cost function:
All dollar values are normalized by fuel price. The quadratic log of the output is added to capture nonlinearities due to
scale effects in cost functions. New variables, log_C_PF
, log_PK_PF
, log_PL_PF
, log_y
, and log_y_sq
, are created to reflect transformations. The following statements create the data set and transformed variables:
data electricity; input Firm Year Cost Output LPrice LShare KPrice KShare FPrice FShare; datalines; 1 1955 .0820 2.0 2.090 .3164 183.000 .4521 17.9000 .2315 2 1955 .6610 3.0 2.050 .2073 174.000 .6676 35.1000 .1251 3 1955 .9900 4.0 2.050 .2349 171.000 .5799 35.1000 .1852 4 1955 .3150 4.0 1.830 .1152 166.000 .7857 32.2000 .0990 5 1955 .1970 5.0 2.120 .2300 233.000 .3841 28.6000 .3859 ... more lines ...
/* Data transformations */ data electricity; set electricity; label Firm="firm index" Year="1955 for all observations" Cost="Total cost" Output="Total output" LPrice="Wage rate" LShare="Cost share for labor" KPrice="Capital price index" KShare="Cost share for capital" FPrice="Fuel price" FShare"Cost share for fuel"; log_C_PF=log(Cost/FPrice); log_PK_PF=log(KPrice/FPrice); log_PL_PF=log(LPrice/FPrice); log_y=log(Output); log_y_sq=log_y**2/2; run;
The following statements estimate a stochastic frontier exponential cost model that uses Christensen and Greene (1976) data:
/*-- Stochastic Frontier Cost Model --*/ proc qlim data=electricity; model log_C_PF = log_PK_PF log_PL_PF log_y log_y_sq; endogenous log_C_PF ~ frontier (type=exponential cost); run;
Output 22.7.2 shows the results.
Output 22.7.2: Exponential Distribution
Stochastic Frontier Production Model |
Model Fit Summary | |
---|---|
Number of Endogenous Variables | 1 |
Endogenous Variable | log_C_PF |
Number of Observations | 159 |
Log Likelihood | -23.30430 |
Maximum Absolute Gradient | 3.0458E-6 |
Number of Iterations | 21 |
Optimization Method | Quasi-Newton |
AIC | 60.60860 |
Schwarz Criterion | 82.09093 |
Sigma | 0.30750 |
Lambda | 1.71345 |
Parameter Estimates | |||||
---|---|---|---|---|---|
Parameter | DF | Estimate | Standard Error | t Value | Approx Pr > |t| |
Intercept | 1 | -4.983211 | 0.543328 | -9.17 | <.0001 |
log_PK_PF | 1 | 0.090242 | 0.109202 | 0.83 | 0.4086 |
log_PL_PF | 1 | 0.504299 | 0.118263 | 4.26 | <.0001 |
log_y | 1 | 0.427182 | 0.066680 | 6.41 | <.0001 |
log_y_sq | 1 | 0.066120 | 0.010079 | 6.56 | <.0001 |
_Sigma_v | 1 | 0.154998 | 0.020271 | 7.65 | <.0001 |
_Sigma_u | 1 | 0.265581 | 0.033614 | 7.90 | <.0001 |
Similarly, the stochastic frontier cost model can be estimated with (type=half
) or (type=truncated
) options that represent half-normal and truncated normal errors.
The following statements illustrate the half-normal option:
/*-- Stochastic Frontier Cost Model --*/ proc qlim data=electricity; model log_C_PF = log_PK_PF log_PL_PF log_y log_y_sq; endogenous log_C_PF ~ frontier (type=half cost); run;
Output 22.7.3 shows the result.
Output 22.7.3: Half-Normal Distribution
Stochastic Frontier Production Model |
Model Fit Summary | |
---|---|
Number of Endogenous Variables | 1 |
Endogenous Variable | log_C_PF |
Number of Observations | 159 |
Log Likelihood | -34.95304 |
Maximum Absolute Gradient | 0.0001150 |
Number of Iterations | 22 |
Optimization Method | Quasi-Newton |
AIC | 83.90607 |
Schwarz Criterion | 105.38840 |
Sigma | 0.42761 |
Lambda | 1.80031 |
Parameter Estimates | |||||
---|---|---|---|---|---|
Parameter | DF | Estimate | Standard Error | t Value | Approx Pr > |t| |
Intercept | 1 | -4.434634 | 0.690197 | -6.43 | <.0001 |
log_PK_PF | 1 | 0.069624 | 0.136250 | 0.51 | 0.6093 |
log_PL_PF | 1 | 0.474578 | 0.146812 | 3.23 | 0.0012 |
log_y | 1 | 0.256874 | 0.080777 | 3.18 | 0.0015 |
log_y_sq | 1 | 0.088051 | 0.011817 | 7.45 | <.0001 |
_Sigma_v | 1 | 0.207637 | 0.039222 | 5.29 | <.0001 |
_Sigma_u | 1 | 0.373810 | 0.073605 | 5.08 | <.0001 |
The following statements illustrate the truncated normal option:
/*-- Stochastic Frontier Cost Model --*/ proc qlim data=electricity; model log_C_PF = log_PK_PF log_PL_PF log_y log_y_sq; endogenous log_C_PF ~ frontier (type=truncated cost); run;
Output 22.7.4 shows the results.
Output 22.7.4: Truncated Normal Distribution
Stochastic Frontier Production Model |
Model Fit Summary | |
---|---|
Number of Endogenous Variables | 1 |
Endogenous Variable | log_C_PF |
Number of Observations | 159 |
Log Likelihood | -60.32110 |
Maximum Absolute Gradient | 4225 |
Number of Iterations | 4 |
Optimization Method | Quasi-Newton |
AIC | 136.64220 |
Schwarz Criterion | 161.19343 |
Sigma | 0.37350 |
Lambda | 0.70753 |
Parameter Estimates | |||||
---|---|---|---|---|---|
Parameter | DF | Estimate | Standard Error | t Value | Approx Pr > |t| |
Intercept | 1 | -3.770440 | 0.839388 | -4.49 | <.0001 |
log_PK_PF | 1 | -0.045852 | 0.176682 | -0.26 | 0.7952 |
log_PL_PF | 1 | 0.602961 | 0.191454 | 3.15 | 0.0016 |
log_y | 1 | 0.094966 | 0.071124 | 1.34 | 0.1818 |
log_y_sq | 1 | 0.113010 | 0.012225 | 9.24 | <.0001 |
_Sigma_v | 1 | 0.304905 | 0.047868 | 6.37 | <.0001 |
_Sigma_u | 1 | 0.215728 | 0.068725 | 3.14 | 0.0017 |
_Mu | 1 | 0.477097 | 0.116295 | 4.10 | <.0001 |
If no (Production
) or (Cost
) option is specified, the stochastic frontier production model is estimated by default.