Learn R Programming

deaR (version 1.0)

read_data: read_data

Description

This function creates, from a data frame, a deadata structure, which is as list with fields input, output, dmunames, nc_inputs, nc_outputs, nd_inputs, nd_outputs.

Usage

read_data(datadea,
ni = NULL, no = NULL, dmus = 1, inputs = NULL, outputs = NULL, nc_inputs = NULL,
nc_outputs = NULL, nd_inputs = NULL, nd_outputs = NULL, ud_inputs = NULL, 
ud_outputs = NULL)

Arguments

datadea

Data frame with DEA data.

ni

Number of inputs, if inputs are in columns 2:(ni + 1) (if DMUs are in the first column) or 1:ni (no DMUs column).

no

Number of outputs, if outputs are in columns (ni + 2):(ni + no + 1) (if DMUs are in the first column) or (ni + 1):(ni + no) (no DMUs column). If not specified, DMUs are in the first column.

dmus

Column (number or name) of DMUs (optional). If there is not any DMU column, then it must be NULL.

inputs

Columns (numbers or names) of inputs (optional). It prevails over ni.

outputs

Columns (numbers or names) of outputs (optional). It prevails over no.

nc_inputs

A numeric vector containing non-controllable inputs.

nc_outputs

A numeric vector containing non-controllable outputs.

nd_inputs

A numeric vector containing non-discretionary inputs.

nd_outputs

A numeric vector containing non-discretionary outputs.

ud_inputs

A numeric vector containing undesirable (good) inputs.

ud_outputs

A numeric vector containing undesirable (bad) outputs.

Value

An object of class deadata

Examples

Run this code
# NOT RUN {
data("Coll_Blasco_2006")
data_example <- read_data(datadea = Coll_Blasco_2006,
                          ni = 2, 
                          no = 2)
# This is the same as:
data_example <- read_data(Coll_Blasco_2006,
                          dmus = 1,
                          inputs = 2:3, 
                          outputs = 4:5)
# If the first input is a non-controllable input:
data_example <- read_data(Coll_Blasco_2006,
                          dmus = 1,
                          inputs = 2:3,
                          outputs = 4:5, 
                          nc_inputs = 1)
# If the second output is a non-discretionary output:
data_example <- read_data(Coll_Blasco_2006,
                          dmus = 1, 
                          inputs = 2:3, 
                          outputs = 4:5, 
                          nd_outputs = 2)
# If the second input is a non-discretionary input and the second output is an undesirable:
data_example <- read_data(Coll_Blasco_2006,
                          dmus = 1, 
                          inputs = 2:3, 
                          outputs = 4:5, 
                          nd_inputs = 2, 
                          ud_outputs = 2)

# }

Run the code above in your browser using DataLab