DEA: DEA: Data Envelopment Analysis

Description Usage Arguments Details Value References See Also Examples

View source: R/DEA.R

Description

Estimates a Data Envelopment Analysis frontier and calculates efficiency measures

Usage

1
2
DEA(x, y, rts="vrs", orientation="input", slack=TRUE, dual=FALSE,
  second="none", z=0, round=FALSE, debug=1)

Arguments

x

Inputs or resources used by each decision making unit.

y

Outputs or products of each decision making unit. Must have same number of rows as x

rts

Returns to scale for the application, production technology, or industry studied

vrs Variable returns to scale, convexity and free disposability
drs Decreasing returns to scale, convexity, down-scaling and free disposability
crs Constant returns to scale, convexity and free disposability
irs Increasing returns to scale, (up-scaling, but not down-scaling), convexity and free disposability
orientation

Orientation of the DEA model - primary emphasis on input-reduction input or output-augmentation output

slack

Optional: slack=TRUE indicates a secondary objective function of maximizing radial slacks to identify weakly efficient DMUs

dual

Optional: dual=TRUE reports back the dual weights (multipliers) for the inputs and outputs

round

Optional: round=TRUE rounds efficiency values to 0 and 1 if close.

second

Optional: Enables an alternate secondary objective function based on lambda and the z argument. The default is none. Other options are min or max which will then minimize or maximize z*lambda while holding efficiency constant for each decision making unit. Note that this precludes slack maximization in the current implementation

z

Optional:a matrix with one column and the same number of rows (decision making units) as x and y, it is only used when second=min or max

debug

Optional: Only for debugging. If debug is a integer greater then zero debug information will be output.

Details

This DEA function draws inspiration from previous R packages for doing DEA including Benchmarking and FEAR. As such it was designed to use similar parameters and return similar results to allow users to switch between packages. The DEA function was developed to support a function for doing Technology Forecasting using Data Envelopment Analysis or TFDEA. In particular, TFDEA requires an option to resolve multiple optima that is similar to but different from the standard slack maximization approach in Data Envelopment Analysis. This feature is exposed through DEA function's second and z parameters.

Value

$status

If the solver returned a non-zero status for each decision making unit

$eff

Efficiency score for each decision making unit

$lambda

Lambda values for each decision making unit

$vx

Input weights used by each decision making unit, only returned when dual=TRUE

$uy

Output weights used by each decision making unit, only returned when dual=TRUE

$w

W value for each decision making unit, only returned when dual=TRUE

$sx

Radial input slacks, only returned when slack=TRUE

$sy

Radial output slacks, only returned when slack=TRUE

References

Bogetoft and Otto; Benchmarking with DEA, SFA, and R; Springer 2011

Paul W. Wilson (2008), FEAR 1.0: A Software Package for Frontier Efficiency Analysis with R, Socio-Economic Planning Sciences 42, 247-254

See Also

SDEA Super-efficiency - an extension to regular DEA that allows for differentiating between efficient DMUs.

TFDEA Technology Forecasting using Data Envelopment Analysis - a method of technology forecasting using past data to predict future capabilities

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
x <- matrix(c(8,2,4,7,2,8,4,3),ncol=2,dimnames=list(LETTERS[1:4]))
colnames(x) = c("X1", "X2")
y <- matrix(c(1,1,1,1),ncol=1,dimnames=list(LETTERS[1:4],"Y"))

# Simple radial DEA efficiency
DEA(x, y, rts="crs", orientation="input")

# Simple radial DEA efficiency with slack maximization
DEA(x, y, rts="crs", orientation="input", slack=TRUE)

# Example of secondary objective function
x <- matrix(c(8,2,4,7,10,12,2,8,4,3,2,2),ncol=2,dimnames=list(LETTERS[1:6]))
colnames(x) = c("X1", "X2")
y <- matrix(c(1,1,1,1,1,1),ncol=1,dimnames=list(LETTERS[1:6],"Y"))
z <- matrix(c(1:6),ncol=1,dimnames=list(LETTERS[1:6],"Z"))

DEA (x,y,rts="crs", orientation="input", round=TRUE, slack=FALSE,
  second="min", z=z)

DEA (x,y,rts="crs", orientation="input", round=TRUE, slack=FALSE,
  second="max", z=z)

TFDEA documentation built on May 29, 2017, 11:55 a.m.

Related to DEA in TFDEA...