#==============================ENCABEZADO===================================
# TEMA: EI Variables Cualitativa - Complejidad de la estructura
# AUTOR: GRUPO 4
# FECHA: 08-02-2026

#------CARGA DE DATOS-------
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
setwd("C:/Users/HP/Documents/PROYECTO ESTADISTICA/RStudio")
datos <- read.csv("tablap.csv", header = TRUE, dec = ",", sep = ";")

#--- PREPARACI??N DE DATOS ---
df_comp <- as.data.frame(table(datos$Complexity.of.the.casing.structure))
names(df_comp) <- c("Variable", "ni")
df_comp$hi <- df_comp$ni / sum(df_comp$ni)

# 2. REALIZAMOS LA TDF
cat("\n--- TDF: COMPLEJIDAD DEL CASING ---\n")
## 
## --- TDF: COMPLEJIDAD DEL CASING ---
print(df_comp)
##   Variable   ni           hi
## 1        0 2476 0.1971180638
## 2        1   33 0.0026271794
## 3        2 5383 0.4285486824
## 4        3 4138 0.3294323700
## 5        4  503 0.0400445824
## 6        5   25 0.0019902874
## 7        6    2 0.0001592230
## 8        7    1 0.0000796115
# 3. GRAFICA 1: REALIDAD
barplot(df_comp$hi, names.arg = df_comp$Variable, col = "darkgreen", 
        main = "Grafico Nro. 1: Distribucion de Complejidad de la Estructura",
        xlab = "Nivel de Complejidad", ylab = "hi",
        las = 2, cex.names = 0.7, ylim = c(0, max(df_comp$hi) + 0.1))

# 5. MODELO BINOMIAL
n_C <- nrow(df_comp) - 1
xi_C <- 0:n_C
prob_C <- sum(xi_C * df_comp$hi) / n_C
p_bin_C <- dbinom(xi_C, size = n_C, prob = prob_C)

#--- GRAFICA 2: MODELO ---
barplot(p_bin_C, names.arg = df_comp$Variable, col = "gold", 
        main = "Grafico Nro. 2: Distribucion de Complejidad de la Estructura",
        xlab = "Nivel de Complejidad", ylab = "Probabilidad",
        las = 2, cex.names = 0.7, ylim = c(0, max(p_bin_C) + 0.1))

#--- GRAFICA 3: COMPARACI??N ---
max_pC <- max(max(df_comp$hi), max(p_bin_C)) + 0.1
barplot(rbind(df_comp$hi, p_bin_C), beside = TRUE, col = c("darkgreen", "gold"),
        main = "Grafico Nro. 3: Distribucion de Complejidad de la Estructura",
        xlab = "Nivel de Complejidad", ylab = "Probabilidad",
        names.arg = df_comp$Variable, las = 2, cex.names = 0.7, ylim = c(0, max_pC))
legend("topright", legend = c("Realidad", "Modelo"), fill = c("darkgreen", "gold"), bty = "n")

#--- VEREDICTO (CORREGIDO) ---
r_C <- cor(df_comp$hi, p_bin_C)
chi_C <- sum(((df_comp$hi - p_bin_C)^2) / p_bin_C)
crit_C <- qchisq(0.85, df = n_C)

veredicto_C <- data.frame(
  Prueba = c("Pearson (r)", "Chi-Cuadrado (X2)"),
  Valor = c(round(r_C, 4), round(chi_C, 4)),
  Resultado = c(ifelse(!is.na(r_C) && r_C >= 0.7, "APROBADO", "REPROBADO"),
                ifelse(chi_C < crit_C, "APROBADO", "REPROBADO"))
)

cat("\n--- VEREDICTO FINAL ---\n")
## 
## --- VEREDICTO FINAL ---
print(veredicto_C, row.names = FALSE)
##             Prueba  Valor Resultado
##        Pearson (r) 0.7002  APROBADO
##  Chi-Cuadrado (X2) 0.5197  APROBADO
# 6. C??LCULO DE PROBABILIDADES
cat("\n6. PROBABILIDAD (Modelo):", round(p_bin_C[1]*100, 2), "%\n")
## 
## 6. PROBABILIDAD (Modelo): 9.23 %