
Configuración y Carga
de Datos
##### UNIVERSIDAD CENTRAL DEL ECUADOR #####
#### AUTOR: MARTIN SARMIENTO ####
### CARRERA: INGENIERÍA EN PETRÓLEOS #####
#### VARIABLE PAISES (CONTINENTES) ####
## DATASET ##
setwd("~/R/COUNTRY")
# Cargar dataset
Datos <- read.csv("DataSet_.csv", sep = ";", fileEncoding = "latin1")
## Estructura de los datos
str(Datos)
## 'data.frame': 7142 obs. of 26 variables:
## $ fid : int 1 2 3 4 5 6 7 8 9 10 ...
## $ objectid : int 127 128 129 130 131 132 133 134 135 136 ...
## $ code : chr "Arg-00001" "Arg-00002" "Arg-00003" "Arg-00004" ...
## $ country : chr "Argentina" "Argentina" "Argentina" "Argentina" ...
## $ plant_name : chr "Aconcagua solar farm" "Aconcagua solar farm" "Altiplano 200 Solar Power Plant" "Altiplano 200 Solar Power Plant" ...
## $ operational_status : chr "announced" "announced" "operating" "operating" ...
## $ longitude : num -68.9 -68.9 -66.9 -66.9 -68.9 ...
## $ latitude : num -33 -33 -24.1 -24.1 -33.3 ...
## $ elevation : int 929 929 4000 4000 937 865 858 858 858 858 ...
## $ area : num 0 0 4397290 5774 0 ...
## $ slope : num 0.574 0.574 1.603 6.243 0.903 ...
## $ slope_type : chr "Plano o casi plano" "Plano o casi plano" "Plano o casi plano" "Moderado" ...
## $ curvature : num 0.000795 0.000795 -0.002781 -0.043699 0.002781 ...
## $ curvature_type : chr "Superficies planas o intermedias" "Superficies planas o intermedias" "Superficies planas o intermedias" "Superficies cóncavas / Valles" ...
## $ aspect : num 55.1 55.1 188.7 270.9 108.4 ...
## $ aspect_type : chr "Northeast" "Northeast" "South" "West" ...
## $ ghi : num 6.11 6.11 8.01 7.88 6.12 ...
## $ solar_aptitude : num 0.746 0.746 0.8 0.727 0.595 ...
## $ solar_aptittude_class: chr "Alta" "Alta" "Alta" "Alta" ...
## $ humidity : num 0 0 53.7 53.7 0 ...
## $ wind_speed : num 3.78 3.78 7.02 8.33 3.87 ...
## $ wind_direction : num 0 0 55.1 55.1 0 ...
## $ ambient_temperature : num 12.6 12.6 6.8 6.8 13.1 ...
## $ optimal_tilt : int 31 31 26 26 31 33 30 30 30 30 ...
## $ peak_power_per_hour : num 4.98 4.98 6.39 6.39 4.97 ...
## $ total_power : num 25 66.2 101 107 180 ...
# Cargamos las librerias
library(dplyr)
##
## Adjuntando el paquete: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(ggplot2)
library(gt)
Categorización y
Ordenamiento Lógico
### Agrupación ###
tabla_PAIS$grupo <- case_when(
grepl("Argentina|Bolivia|Brazil|Chile|Colombia|Ecuador|Guyana|Paraguay|Peru|Suriname|Uruguay|Venezuela",
tabla_PAIS$Pais, ignore.case = TRUE) ~ "América del Sur",
grepl("United States|USA|Canada|Mexico|México",
tabla_PAIS$Pais, ignore.case = TRUE) ~ "América del Norte",
grepl("Guatemala|Belize|Honduras|El Salvador|Nicaragua|Costa Rica|Panama|Panamá|Cuba|Dominican|Haiti|Jamaica|Puerto Rico|Bahamas",
tabla_PAIS$Pais, ignore.case = TRUE) ~ "América Central y Caribe",
grepl("Spain|España|France|Germany|Alemania|Italy|Italia|United Kingdom|UK|Portugal|Netherlands|Belgium|Poland|Sweden|Norway|Denmark|Finland|Greece|Russia|Ukraine",
tabla_PAIS$Pais, ignore.case = TRUE) ~ "Europa",
grepl("China|India|Japan|Japón|Korea|Vietnam|Thailand|Indonesia|Malaysia|Philippines|Saudi Arabia|UAE|Israel|Turkey|Turquía|Iran|Iraq",
tabla_PAIS$Pais, ignore.case = TRUE) ~ "Asia",
grepl("South Africa|Egypt|Egipto|Nigeria|Morocco|Marruecos|Algeria|Kenya|Ethiopia|Ghana|Senegal|Ivory Coast",
tabla_PAIS$Pais, ignore.case = TRUE) ~ "África",
grepl("Australia|New Zealand|Fiji|Papua",
tabla_PAIS$Pais, ignore.case = TRUE) ~ "Oceanía",
TRUE ~ "Otros / No Especificado")
tabla_resumen <- tabla_PAIS %>%
group_by(grupo) %>%
summarise(
Frecuencia = sum(Freq),
Porcentaje = sum(hi_porc)) %>%
arrange(desc(Frecuencia))
# Renombramos columnas
colnames(tabla_resumen) <- c("Continente","ni","hi (%)")
# Tabla Intermedia GT
tabla_resumen_gt <- tabla_resumen %>%
gt() %>%
tab_header(
title = md("**Tabla N°1 de Agrupación por Continentes**")) %>%
tab_source_note(source_note = "Autor: Martin Sarmiento") %>%
cols_label(
Continente = "Continentes",
ni = "Frecuencia (ni)",
`hi (%)` = "Porcentaje (hi%)") %>%
fmt_number(columns = c(`hi (%)`), decimals = 2) %>%
tab_options(
heading.title.font.size = px(16),
column_labels.background.color = "#f0f0f0")
# Mostramos la tabla
tabla_resumen_gt
| Tabla N°1 de Agrupación por Continentes |
| Continentes |
Frecuencia (ni) |
Porcentaje (hi%) |
| América del Sur |
7141 |
99.99 |
| Otros / No Especificado |
1 |
0.01 |
| Autor: Martin Sarmiento |
Tabla de Distribución
de Frecuencias
#### Crear fila de totales ####
totales <- c("TOTAL", sum(tabla_resumen$ni), sum(tabla_resumen$`hi (%)`))
tabla_Continente_Final <- rbind(tabla_resumen, totales)
# Convertir a números para GT
tabla_Continente_Final$ni <- as.numeric(tabla_Continente_Final$ni)
tabla_Continente_Final$`hi (%)` <- as.numeric(tabla_Continente_Final$`hi (%)`)
# TABLA 1
tabla_final_gt <- tabla_Continente_Final %>%
gt() %>%
tab_header(
title = md("**Tabla N°2 de Distribución de Frecuencias de País**")) %>%
tab_source_note(source_note = "Autor: Martin Sarmiento") %>%
cols_label(
Continente = "Continentes",
ni = "Frecuencia (ni)",
`hi (%)` = "Porcentaje (hi%)") %>%
fmt_number(columns = c(`hi (%)`), decimals = 2) %>%
tab_options(
heading.title.font.size = px(16),
column_labels.background.color = "#f0f0f0")
tabla_final_gt
| Tabla N°2 de Distribución de Frecuencias de País |
| Continentes |
Frecuencia (ni) |
Porcentaje (hi%) |
| América del Sur |
7141 |
99.99 |
| Otros / No Especificado |
1 |
0.01 |
| TOTAL |
7142 |
100.00 |
| Autor: Martin Sarmiento |
Gráficos
Gráfico 1 –
Frecuencia local
# Diagrama de barrras local ni
par(mar = c(11, 4, 4, 2))
barplot(tabla_resumen$ni,
main="Gráfica N°1: Distribución de Cantidad de Plantas Solares por Continentes",
cex.main = 1,
xlab = "",
ylab = "Cantidad",
col = "skyblue",
names.arg=tabla_resumen$Continente,
cex.names = 0.8,
las = 2)
mtext("Continentes", side = 1, line = 9)

Gráfico 2 –
Frecuencia global
# Diagrama de barrras global ni
par(mar = c(13, 4, 4, 2))
barplot(tabla_resumen$ni,
main="Gráfica N°2: Distribución de Cantidades Globales de las Plantas Solares por Continentes",
cex.main = 0.9,
xlab = "",
ylab = "Cantidad",
col = "skyblue",
ylim = c(0,8000),
names.arg=tabla_resumen$Continente,
cex.names = 0.8,
las = 2)
mtext("Continentes", side = 1, line = 11)

Gráfico 3 –
Porcentaje local
# Diagrama de barrras local hi
par(mar = c(13, 4, 4, 2))
barplot(tabla_resumen$`hi (%)`,
main="Gráfica N°3: Distribución Porcentual de las Plantas Solares por Continentes",
cex.main = 1,
xlab = "",
ylab = "Porcentaje %",
col = "skyblue",
names.arg=tabla_resumen$Continente,
cex.names = 0.8,
las = 2)
mtext("Continentes", side = 1, line = 11)

Gráfico 4 –
Porcentaje global
# Diagrama de barrras global hi
par(mar = c(13, 4, 4, 2))
barplot(tabla_resumen$`hi (%)`,
main="Gráfica N°4: Distribución Porcentual Global de las Plantas Solares por Continentes",
cex.main = 1,
xlab = "",
ylab = "Porcentaje %",
col = "skyblue",
ylim = c(0,100),
names.arg=tabla_resumen$Continente,
cex.names = 0.8,
las = 2)
mtext("Continentes", side = 1, line = 11)

Gráfico 5 – Diagrama
Circular
## Diagrama circular
par(mar = c(5, 6, 4, 10), xpd = TRUE)
# Etiquetas limpias
etiquetas_limpias <- ifelse(tabla_resumen$`hi (%)` > 1,
paste0(round(tabla_resumen$`hi (%)`, 1), "%"),
"")
mis_colores_azules <- c(
"#E1F5FE",
"#B3E5FC",
"#81D4FA",
"#4FC3F7",
"#29B6F6",
"#039BE5",
"#0277BD")
colores_finales <- rep(mis_colores_azules, length.out = length(tabla_resumen$Continente))
pie(tabla_resumen$`hi (%)`,
main = "Gráfica N°5: Distribución Porcentual de las Plantas Solares por Continentes",
cex.main = 1,
radius = 0.9,
labels = etiquetas_limpias,
col = colores_finales,
cex = 0.7)
# Leyenda del diagrama circular
legend(x = 1.3, y = 1.1,
legend = tabla_resumen$Continente,
fill = colores_finales,
cex = 0.6,
title = "Continentes",
bty = "n")

Indicadores
Estadísticos
# Tabla de Indicadores
tabla_indicadores <- data.frame(
"Variable" = "País",
"Rango" = "Continentes",
"Media (X)" = "-",
"Mediana (Me)" = "-",
"Moda (Mo)" = "América del Sur",
"Varianza (V)" = "-",
"Desv. Est. (Sd)" = "-",
"C.V. (%)" = "-",
"Asimetría (As)" = "-",
"Curtosis (K)" = "-",
check.names = FALSE)
# Generar Tabla de Indicadores
tabla_conclusiones_gt <- tabla_indicadores %>%
gt() %>%
tab_header(
title = md("**Tabla N°3 de Conclusiones**")) %>%
tab_source_note(source_note = "Autor: Martin Sarmiento") %>%
tab_options(column_labels.background.color = "#f0f0f0")
tabla_conclusiones_gt
| Tabla N°3 de Conclusiones |
| Variable |
Rango |
Media (X) |
Mediana (Me) |
Moda (Mo) |
Varianza (V) |
Desv. Est. (Sd) |
C.V. (%) |
Asimetría (As) |
Curtosis (K) |
| País |
Continentes |
- |
- |
América del Sur |
- |
- |
- |
- |
- |
| Autor: Martin Sarmiento |
Conclusiones
La variable “País”, presenta como valor más frecuente América del
Sur, con una participación destacada en la muestra.