Escritura
setwd("/cloud/project")
Datos <- read.csv("DataSet_.csv", sep = ";", fileEncoding = "latin1")
install.packages("dplyr")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.5'
## (as 'lib' is unspecified)
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
install.packages("ggplot2")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.5'
## (as 'lib' is unspecified)
library(ggplot2)
Tabla Base
Status <- Datos$operational_status
TDF_status <- table(Status)
tabla_status <- as.data.frame(TDF_status)
hi <- tabla_status$Freq/sum(tabla_status$Freq)
hi_porc <- hi*100
tabla_STATUS <- data.frame(tabla_status, hi_porc)
colnames(tabla_STATUS)[1] <- "Status"
Agrupación
tabla_resumen <- tabla_STATUS %>%
mutate(grupo = case_when(
grepl("operating", Status, ignore.case = TRUE) ~ "Operativo",
grepl("announced", Status, ignore.case = TRUE) ~ "Anunciado",
grepl("pre-construction|construction", Status, ignore.case = TRUE) ~ "Construcción / Pre-Construcción",
grepl("shelved", Status, ignore.case = TRUE) ~ "Archivado (Shelved)",
grepl("cancelled", Status, ignore.case = TRUE) ~ "Cancelado",
grepl("mothballed", Status, ignore.case = TRUE) ~ "Inactivo (Mothballed)",
TRUE ~ "Sin especificar / Otros"
)) %>%
group_by(grupo) %>%
summarise(
Frecuencia = sum(Freq),
Porcentaje = sum(hi_porc)
) %>%
arrange(desc(Frecuencia))
colnames(tabla_resumen) <- c("Estado","ni","hi (%)")
tabla_resumen
## # A tibble: 7 × 3
## Estado ni `hi (%)`
## <chr> <int> <dbl>
## 1 Construcción / Pre-Construcción 3573 50.0
## 2 Operativo 3035 42.5
## 3 Cancelado 296 4.14
## 4 Archivado (Shelved) 142 1.99
## 5 Anunciado 93 1.30
## 6 Inactivo (Mothballed) 2 0.0280
## 7 Sin especificar / Otros 1 0.0140
Totales
totales <- c(
Estado = "TOTAL",
ni = sum(tabla_resumen$ni),
hi = sum(tabla_resumen$`hi (%)`)
)
tabla_Status_Final <- rbind(tabla_resumen, totales)
tabla_Status_Final
## # A tibble: 8 × 3
## Estado ni `hi (%)`
## <chr> <chr> <chr>
## 1 Construcción / Pre-Construcción 3573 50.0280033604032
## 2 Operativo 3035 42.4950994119294
## 3 Cancelado 296 4.14449733968076
## 4 Archivado (Shelved) 142 1.98823858863064
## 5 Anunciado 93 1.30215625875105
## 6 Inactivo (Mothballed) 2 0.0280033604032484
## 7 Sin especificar / Otros 1 0.0140016802016242
## 8 TOTAL 7142 100
GRÁFICOS
Gráfico 1 – Frecuencia local
par(mar = c(10, 4, 4, 2))
barplot(tabla_resumen$ni,main="Gráfica N°1: Distribución del estado operativo de plantas solares",
ylab = "Cantidad",
col = "skyblue",
names.arg=tabla_resumen$Estado,
cex.names = 0.7, las = 2)
mtext("Estado Operativo", side = 1, line = 9)

Gráfico 2 – Frecuencia global
barplot(tabla_resumen$ni,main="Gráfica N°2: Distribución del estado operativo (Global)",
ylab = "Cantidad",
col = "skyblue",
ylim = c(0,8000),
names.arg=tabla_resumen$Estado,
cex.names = 0.7, las = 2)
mtext("Estado Operativo", side = 1, line = 9)

Gráfico 3 – Porcentaje local
barplot(tabla_resumen$`hi (%)`,main="Gráfica N°3: Distribución porcentual del estado operativo",
ylab = "Porcentaje %",
col = "skyblue",
names.arg=tabla_resumen$Estado,
cex.names = 0.7, las = 2)
mtext("Estado Operativo", side = 1, line = 9)

Gráfico 4 – Porcentaje global
barplot(tabla_resumen$`hi (%)`,main="Gráfica N°4: Distribución porcentual global",
ylab = "Porcentaje %",
col = "skyblue",
ylim = c(0,100),
names.arg=tabla_resumen$Estado,
cex.names = 0.7, las = 2)
mtext("Estado Operativo", side = 1, line = 9)

Gráfico 5 – Diagrama Circular
pie(tabla_resumen$`hi (%)`,
main = "Gráfica N°5: Distribución porcentual del estado operativo",
radius = 0.8,
labels = paste0(round(tabla_resumen$`hi (%)`,2),"%"),
col = colores <- c(rev(heat.colors(length(tabla_resumen$Estado)))),
cex = 0.6)
legend(x = 0.9, y = 1,
legend = tabla_resumen$Estado,
fill = colores,
cex = 0.5,
title = "Estado Operativo")

par(xpd = TRUE)
Tabla de Conlusiones
install.packages("knitr")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.5'
## (as 'lib' is unspecified)
library(knitr)
tabla_indicadores <- data.frame(
"Variable" = "Estado Operativo",
"Rango" = "Categorías de Estado",
"X" = "-",
"Me" = "-",
"Mo" = "Anunciado / Operativo",
"V" = "-",
"Sd" = "-",
"Cv" = "-",
"As" = "-",
"K" = "-",
"Valores Atipicos" = "-"
)
kable(tabla_indicadores, align = 'c', caption = "Conclusiones de la variable estado operativo")
Conclusiones de la variable estado operativo
| Estado Operativo |
Categorías de Estado |
- |
- |
Anunciado / Operativo |
- |
- |
- |
- |
- |
- |