# Reproducir el ejemplo de la clase
options(scipen = 99999)
library(deaR)
PFT1981<-deaR::PFT1981
PFT <- PFT1981[1:49,]
PFT <- make_deadata(PFT,
inputs = 2:6,
outputs = 7:9 )
modelo_dea <- model_basic(PFT,
orientation = "io",
rts = "crs")
eff <- efficiencies(modelo_dea)
resultados<-data.frame(round(eff,2)*100,round(1-eff,2)*100)
names(resultados)<-c("E","1-E")
resultados
## E 1-E
## Site1 100 0
## Site2 90 10
## Site3 99 1
## Site4 90 10
## Site5 100 0
## Site6 91 9
## Site7 89 11
## Site8 91 9
## Site9 87 13
## Site10 100 0
## Site11 98 2
## Site12 97 3
## Site13 86 14
## Site14 98 2
## Site15 100 0
## Site16 95 5
## Site17 100 0
## Site18 100 0
## Site19 95 5
## Site20 100 0
## Site21 100 0
## Site22 100 0
## Site23 96 4
## Site24 100 0
## Site25 98 2
## Site26 94 6
## Site27 100 0
## Site28 94 6
## Site29 84 16
## Site30 90 10
## Site31 84 16
## Site32 91 9
## Site33 94 6
## Site34 85 15
## Site35 100 0
## Site36 80 20
## Site37 86 14
## Site38 97 3
## Site39 94 6
## Site40 100 0
## Site41 95 5
## Site42 95 5
## Site43 87 13
## Site44 100 0
## Site45 89 11
## Site46 91 9
## Site47 100 0
## Site48 100 0
## Site49 100 0
# Ordenar los resultados de los más eficientes a los menos eficientes
resultados_ordenados <- resultados[order(-resultados$E), ]
print(resultados_ordenados)
## E 1-E
## Site1 100 0
## Site5 100 0
## Site10 100 0
## Site15 100 0
## Site17 100 0
## Site18 100 0
## Site20 100 0
## Site21 100 0
## Site22 100 0
## Site24 100 0
## Site27 100 0
## Site35 100 0
## Site40 100 0
## Site44 100 0
## Site47 100 0
## Site48 100 0
## Site49 100 0
## Site3 99 1
## Site11 98 2
## Site14 98 2
## Site25 98 2
## Site12 97 3
## Site38 97 3
## Site23 96 4
## Site16 95 5
## Site19 95 5
## Site41 95 5
## Site42 95 5
## Site26 94 6
## Site28 94 6
## Site33 94 6
## Site39 94 6
## Site6 91 9
## Site8 91 9
## Site32 91 9
## Site46 91 9
## Site2 90 10
## Site4 90 10
## Site30 90 10
## Site7 89 11
## Site45 89 11
## Site9 87 13
## Site43 87 13
## Site13 86 14
## Site37 86 14
## Site34 85 15
## Site29 84 16
## Site31 84 16
## Site36 80 20
# Oportunidad de mejora promedio para las unidades ineficientes
oport_mejora_media <- mean(resultados_ordenados$`1-E`[resultados_ordenados$E < 100 & resultados_ordenados$E > 0])
print(oport_mejora_media)
## [1] 8.4375