stoned {Benchmarking} | R Documentation |
Convex nonparametric least squares
Description
Convex nonparametric least squares here for convex (Cost) function function or concave (Production) function with multiplicative or additive error term. the StoNED estimator combines the axiomatic and non-parametric frontier (the DEA aspect) with a stochastic noise term (the SFA aspect)
Usage
stoned(X, Y, RTS = "vrs", COST = 0, MULT = 0, METHOD = "MM")
Arguments
X |
Inputs (right hand side) of firms to be evaluated, a K x m matrix of observations of K firms with m inputs (firm x input). |
Y |
Output or cost (left hand side) of firms to be evaluated, a K x 1 matrix of observations of K firms with 1 output or cost (firm x input). |
RTS |
RTS determines returns to scale assumption: RTS="vrs",
"drs", "crs" and "irs" are possible for constant or variable returns
to scale; see |
COST |
COST specifies whether a cost function needs is estimated (COST=1) or a production function (COST=0). |
MULT |
MULT determines if multiplicative (MULT=1) or additive (MULT=0) model is estimated. |
METHOD |
METHOD specifies the way efficiency is estimated: MM for Method of Moments and PSL for pseudo likelihood estimation. |
Details
Convex nonparametric least squares here for convex (cost) function with multiplicative error term: Y=b*X*exp(e) or additive error term: Y=b*X + e.
Value
The results are returned in a list with the components:
residualNorm |
Norm of residual |
solutionNorm |
Norm of solution |
error |
Is there an error in the solution? |
coef |
beta_matrix, estimated coefficients as a Kxm matrix; if there is an intercept the first column is the intercept, and the matrix is Kx(1+m) |
residuals |
Residuals |
fit |
Fitted values |
eff |
Efficinecy score |
front |
Points on the frontier |
sigma_u |
sigma_u |
Note
Convex nonparametric least squares here for convex (Cost) function
with multiplicative error term:
Y=b*X*exp(e)
or additive error term: Y=b*X + e
.
The intercept is absent for the constant returns to scale assumption; all other technology assumptions do have an intercept.
Note that the method stoned
is a rather slow method and probably only
works in a reasonable time for less than 3-400 units.
Author(s)
Stefan Seifert s.seifert@ilr.uni-bonn.de and Lars Otto larsot23@gmail.com
References
Kuosmanen and Kortelainen, "Stochastic non-smooth envelopment of data: semi-parametric frontier estimation subject to shape constraints", Journal of Productivity Analysis 2012
Examples
#### Example: Single Input Production Function
n=10
x1 <- runif(n,10,20)
v <- rnorm(n,0,0.01)
u <- abs(rnorm(n,0,0.04))
y <- (x1^0.8)*exp(-u)*exp(v)
sol_MM <- stoned(x1, y)
sol_PSL <- stoned(x1, y, METHOD="PSL")
plot(x1,y)
curve(x^0.8, add=TRUE)
points(x1,sol_MM$front, col="red")
points(x1,sol_PSL$front, col="blue", pch=16, cex=.6)