Carga y Exploración de datos

Carga de datos

Cargamos el archivo “datos_negocios_custom.csv” desde el repositorio de GitHub al entorno de programación.

datos<-read.csv("datos_negocios_custom_1.csv")

Exploración de datos

Realizamos una exploración inicial de los datos mostrando las primeras filas de la tabla para obtener una vista preliminar.

head(datos)
##          Sucursal   Ventas Clientes_Frecuentes Productos_Vendidos
## 1  Sucursal Norte 21824.50                   0                 87
## 2    Sucursal Sur  7791.22                   0                174
## 3 Sucursal Centro  6401.64                   1                 64
## 4  Sucursal Norte 13434.75                   1                 67
## 5    Sucursal Sur 18049.62                   0                144
## 6 Sucursal Centro 17362.74                   0                 97

Mostramos los nombres de las columnas de la tabla:

names(datos) # nombres de las columnas de la tabla
## [1] "Sucursal"            "Ventas"              "Clientes_Frecuentes"
## [4] "Productos_Vendidos"

Analizamos el tipo de variable asociado a los datos de cada columna:

chr: Representa variables categóricas no numéricas.
num: Corresponde a variables numéricas, incluyendo valores decimales
int: Indica variables numéricas de tipo entero (sin decimales).

str(datos)
## 'data.frame':    100 obs. of  4 variables:
##  $ Sucursal           : chr  "Sucursal Norte" "Sucursal Sur" "Sucursal Centro" "Sucursal Norte" ...
##  $ Ventas             : num  21824 7791 6402 13435 18050 ...
##  $ Clientes_Frecuentes: int  0 0 1 1 0 0 1 1 0 0 ...
##  $ Productos_Vendidos : int  87 174 64 67 144 97 187 32 59 119 ...

Vemos las dimensiones de la tabla:
4 columnas y 100 filas.

dim(datos)
## [1] 100   4

Parte 1: Análisis Descriptivo

Tablas Descriptivas:

Verificamos la frecuencia de las variables categóricas de la tabla:
Observamos que la sucursal más frecuente es la del Sur, mientras que las otras dos presentan la misma frecuencia.

table(datos$Sucursal)
## 
## Sucursal Centro  Sucursal Norte    Sucursal Sur 
##              33              33              34

Podemos representar esta información en una tabla que muestra la frecuencia absoluta de cada grupo (n), la frecuencia porcentual y la frecuencia porcentual válida. La frecuencia porcentual válida se calcula con respecto al total de datos válidos, es decir, excluyendo posibles valores nulos o no registrados. Sin embargo, en este caso, no hay datos faltantes, por lo que el total de datos y el total válido son equivalentes.

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
library(questionr)
library(knitr)

# Generar tabla de frecuencias para la variable Sucursal
Tabla_Sucursal <- questionr::freq(datos$Sucursal, sort = "dec", total = TRUE)

# Mostrar la tabla de manera elegante con kable
knitr::kable(Tabla_Sucursal, caption = "Tabla de Frecuencia de Sucursal")
Tabla de Frecuencia de Sucursal
n % val%
Sucursal Sur 34 34 34
Sucursal Centro 33 33 33
Sucursal Norte 33 33 33
Total 100 100 100

Se realiza un resumen estadístico de cada variable, que incluye el valor mínimo, el primer cuartil, la mediana, la media, el tercer cuartil y el valor máximo de cada variable.

summary(datos)
##    Sucursal             Ventas      Clientes_Frecuentes Productos_Vendidos
##  Length:100         Min.   : 5102   Min.   :0.0         Min.   : 12.00    
##  Class :character   1st Qu.:11694   1st Qu.:0.0         1st Qu.: 69.25    
##  Mode  :character   Median :16243   Median :0.5         Median :116.00    
##                     Mean   :15988   Mean   :0.5         Mean   :108.68    
##                     3rd Qu.:20377   3rd Qu.:1.0         3rd Qu.:145.75    
##                     Max.   :24979   Max.   :1.0         Max.   :198.00
datos_norte <- filter(datos, Sucursal == "Sucursal Norte")
datos_sur <- filter(datos, Sucursal == "Sucursal Sur")
datos_centro <- filter(datos, Sucursal == "Sucursal Centro")
summary(datos_norte)
##    Sucursal             Ventas      Clientes_Frecuentes Productos_Vendidos
##  Length:33          Min.   : 5413   Min.   :0.0000      Min.   : 21.0     
##  Class :character   1st Qu.:11917   1st Qu.:0.0000      1st Qu.: 76.0     
##  Mode  :character   Median :15811   Median :1.0000      Median :117.0     
##                     Mean   :16056   Mean   :0.5152      Mean   :110.5     
##                     3rd Qu.:21137   3rd Qu.:1.0000      3rd Qu.:132.0     
##                     Max.   :24851   Max.   :1.0000      Max.   :198.0
summary(datos_sur)
##    Sucursal             Ventas      Clientes_Frecuentes Productos_Vendidos
##  Length:34          Min.   : 5140   Min.   :0.0000      Min.   : 21.0     
##  Class :character   1st Qu.:10054   1st Qu.:0.0000      1st Qu.: 81.5     
##  Mode  :character   Median :14759   Median :1.0000      Median :129.0     
##                     Mean   :14735   Mean   :0.5882      Mean   :113.4     
##                     3rd Qu.:18962   3rd Qu.:1.0000      3rd Qu.:152.2     
##                     Max.   :24119   Max.   :1.0000      Max.   :174.0
summary(datos_centro)
##    Sucursal             Ventas      Clientes_Frecuentes Productos_Vendidos
##  Length:33          Min.   : 5102   Min.   :0.0000      Min.   : 12.0     
##  Class :character   1st Qu.:14952   1st Qu.:0.0000      1st Qu.: 63.0     
##  Mode  :character   Median :17394   Median :0.0000      Median : 97.0     
##                     Mean   :17209   Mean   :0.3939      Mean   :102.1     
##                     3rd Qu.:22141   3rd Qu.:1.0000      3rd Qu.:148.0     
##                     Max.   :24979   Max.   :1.0000      Max.   :181.0

Gráficos Descriptivos:

Realizamos un gráfico de barras para mostrar la frecuencia de las variables categóricas.

El gráfico es decreciente y su eje vertical representa la frecuencia de cada grupo.
El parámetro “sort” se utiliza para organizar la tabla de datos de manera decreciente, lo que permite visualizar el gráfico en este orden.

barplot(sort(table(datos$Sucursal), decreasing=TRUE), ylim = c(0, 35))

Se generan histogramas de las variables numéricas para analizar la distribución de los datos.
Además, se crean diagramas de caja y bigotes para evaluar la dispersión de los mismos.

Del histograma de la variable ventas podemos ver que esta sesgado a la izquierda debio a que se ve que hay una “cola” en este extremo de la gráfica, es decir, los valores menores son menos frecuentes. Este sesgo a la izqueirda se confirma debido a que la media de esta variable es menor que la mediana segun vemos en el resumen estadistico de antes. 15988<16243.

Tambien podemos ver que los datos estan concentrados en el rango de 14000 a 21000.

library(ggplot2)
ggplot(datos, aes(x = Ventas)) +
  geom_histogram(binwidth = 1000, fill = "skyblue", color = "black", alpha = 0.7) +
  geom_density(aes(y = ..density.. * 5), color = "blue", size = 1) +
  labs(title = "Distribución de las ventas",
       x = "Ventas",
       y = "Frecuencia") +
  theme_minimal()
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ℹ Please use `linewidth` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
## Warning: The dot-dot notation (`..density..`) was deprecated in ggplot2 3.4.0.
## ℹ Please use `after_stat(density)` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.

Del histograma de la variable de productos vendidos, podemos concluir que su distribución es aproximadamente simétrica y los datos estan concentrados entre 50 y 150.

ggplot(datos, aes(x = Productos_Vendidos)) +
  geom_histogram(binwidth = 10, fill = "skyblue", color = "black", alpha = 0.7) +
  geom_density(aes(y = ..density.. * 5), color = "blue", size = 1) +
  labs(title = "Distribución de los productos vendidos",
       x = "Productos Vendidos",
       y = "Frecuencia") +
  theme_minimal()

Diagramas de caja y bigote:

Caja central:
Representa el rango intercuartílico, que abarca el 50% central de los datos.
El borde inferior de la caja corresponde al primer cuartil (Q1, 25%).
El borde superior de la caja corresponde al tercer cuartil (Q3, 75%).
La línea negra dentro de la caja representa la mediana (Q2, 50%), que divide los datos en dos mitades.

Bigotes (líneas):
Indican la dispersión de los datos hasta los valores más extremos que no se consideran atípicos.
Los valores que se encuentran más allá de estos bigotes son considerados outliers (valores atípicos), aunque en este caso no se observan.

Las sucursales Centro y Norte presentan un comportamiento similar en ventas, con medianas altas y dispersiones más compactas, lo que indica estabilidad. En contraste, la sucursal Sur tiene la mediana más baja y mayor variabilidad en sus datos, lo que sugiere una distribución más dispersa de las ventas. Si se busca estabilidad, la sucursal Centro parece la mejor opción, mientras que la sucursal Sur podría requerir estrategias para mejorar su desempeño. Cabe destacar que la sucursal centro es la que tiene ventas de mayor valor.

Además, podemos observar que no hay datos atípicos. Si los hubiera, aparecerían como pequeños círculos alrededor de los extremos de los bigotes.

ggplot(datos, aes(x = Sucursal, y = Ventas, fill = Sucursal)) +
  geom_boxplot() +
  labs(title = "Distribución de Ventas por sucursal",
       x = "Sucursal",
       y = "Ventas") +
  theme_minimal()

En terminos de productos vendidos la sucursal Sur tiene la mediana más alta, seguida de la sucursal Norte y finalmente la sucursal Centro. La sucursal Sur también presenta poca dispersión en las ventas, mientras que la sucursal Norte tiene la distribución más compacta, indicando menor dispersión. En términos de volumen de productos vendidos, la sucursal Sur destaca, lo que sugiere un mejor desempeño en cantidad de unidades comercializadas.

library(ggplot2)
ggplot(datos, aes(x = Sucursal, y = Productos_Vendidos, fill = Sucursal)) +
  geom_boxplot() +
  labs(title = "Distribución de Productos vendidos por sucursal",
       x = "Sucursal",
       y = "Productos vendidos") +
  theme_minimal()

Parte 2

Estimación de la media

media_datos_norte <- mean(datos_norte$Ventas)  
sd_Ventas_datos_norte <- sd(datos_norte$Ventas)  
n_datos_norte <- nrow(datos_norte)  
error_media_datos_norte <- qnorm(0.975) * sd_Ventas_datos_norte / sqrt(n_datos_norte)  


IC_media_datos_norte <- c(media_datos_norte - error_media_datos_norte, media_datos_norte + error_media_datos_norte)
cat("Media de Ventas de la sucursal del norte:", media_datos_norte, "\n")
## Media de Ventas de la sucursal del norte: 16056.09
cat("Intervalo de confianza del 95% para la media de ventas de la sucursal: [", 
    IC_media_datos_norte[1], ",", IC_media_datos_norte[2], "]\n")
## Intervalo de confianza del 95% para la media de ventas de la sucursal: [ 14058.66 , 18053.51 ]
media_datos_sur <- mean(datos_sur$Ventas)  
sd_Ventas_datos_sur <- sd(datos_sur$Ventas)  
n_datos_sur <- nrow(datos_sur)  
error_media_datos_sur <- qnorm(0.975) * sd_Ventas_datos_sur / sqrt(n_datos_sur)  


IC_media_datos_sur <- c(media_datos_sur - error_media_datos_sur, media_datos_sur + error_media_datos_sur)
cat("Media de Ventas de la sucursal del sur:", media_datos_sur, "\n")
## Media de Ventas de la sucursal del sur: 14735.08
cat("Intervalo de confianza del 95% para la media de ventas de la sucursal: [", 
    IC_media_datos_sur[1], ",", IC_media_datos_sur[2], "]\n")
## Intervalo de confianza del 95% para la media de ventas de la sucursal: [ 12917.18 , 16552.99 ]
media_datos_centro <- mean(datos_centro$Ventas)  
sd_Ventas_datos_centro <- sd(datos_centro$Ventas)  
n_datos_centro <- nrow(datos_centro)  
error_media_datos_centro <- qnorm(0.975) * sd_Ventas_datos_centro / sqrt(n_datos_centro)  


IC_media_datos_centro <- c(media_datos_centro - error_media_datos_centro, media_datos_centro + error_media_datos_centro)
cat("Media de Ventas de la sucursal del centro:", media_datos_centro, "\n")
## Media de Ventas de la sucursal del centro: 17209.42
cat("Intervalo de confianza del 95% para la media de ventas de la sucursal: [", 
    IC_media_datos_centro[1], ",", IC_media_datos_centro[2], "]\n")
## Intervalo de confianza del 95% para la media de ventas de la sucursal: [ 15160.11 , 19258.73 ]

Estimación de una Proporción

  • Estima la proporción de una variable binaria y su intervalo de confianza
    La variable binaria es clientes frecuentes
num_clientes_norte <- sum(datos_norte$Clientes_Frecuentes)


n_datos_norte <- nrow(datos_norte)
p_datos_norte <- num_clientes_norte / n_datos_norte 

error_p_norte <- qnorm(0.975) * sqrt((p_datos_norte * (1 - p_datos_norte)) / n_datos_norte)
IC_p_norte <- c(p_datos_norte - error_p_norte, p_datos_norte + error_p_norte)



cat("Clientes frecuentes en Sucursal norte:", num_clientes_norte, "\n")
## Clientes frecuentes en Sucursal norte: 17
cat("Muestra (n):", n_datos_norte, "\n")
## Muestra (n): 33
cat("Proporción muestral de clientes frecuentes en la muestra fue de:", round(p_datos_norte, 4), "\n")
## Proporción muestral de clientes frecuentes en la muestra fue de: 0.5152
cat("Intervalo de confianza (95%) de la población de clientes frecuentes esta entre:", round(IC_p_norte[1], 4), "y", round(IC_p_norte[2], 4), "\n")
## Intervalo de confianza (95%) de la población de clientes frecuentes esta entre: 0.3446 y 0.6857
# Calcular número de clientes frecuentes en la sucursal Sur
num_clientes_sur <- sum(datos_sur$Clientes_Frecuentes)

# Tamaño de la muestra (n)
n_datos_sur <- nrow(datos_sur)

# Proporción muestral de clientes frecuentes
p_datos_sur <- num_clientes_sur / n_datos_sur 

# Error estándar y cálculo del intervalo de confianza (95%)
error_p_sur <- qnorm(0.975) * sqrt((p_datos_sur * (1 - p_datos_sur)) / n_datos_sur)
IC_p_sur <- c(p_datos_sur - error_p_sur, p_datos_sur + error_p_sur)

# Imprimir resultados
cat("Clientes frecuentes en Sucursal Sur:", num_clientes_sur, "\n")
## Clientes frecuentes en Sucursal Sur: 20
cat("Muestra (n):", n_datos_sur, "\n")
## Muestra (n): 34
cat("Proporción muestral de clientes frecuentes en la muestra fue de:", round(p_datos_sur, 4), "\n")
## Proporción muestral de clientes frecuentes en la muestra fue de: 0.5882
cat("Intervalo de confianza (95%) de la población de clientes frecuentes está entre:", 
    round(IC_p_sur[1], 4), "y", round(IC_p_sur[2], 4), "\n")
## Intervalo de confianza (95%) de la población de clientes frecuentes está entre: 0.4228 y 0.7537
# Calcular número de clientes frecuentes en la sucursal Centro
num_clientes_centro <- sum(datos_centro$Clientes_Frecuentes)

# Tamaño de la muestra (n)
n_datos_centro <- nrow(datos_centro)

# Proporción muestral de clientes frecuentes
p_datos_centro <- num_clientes_centro / n_datos_centro 

# Error estándar y cálculo del intervalo de confianza (95%)
error_p_centro <- qnorm(0.975) * sqrt((p_datos_centro * (1 - p_datos_centro)) / n_datos_centro)
IC_p_centro <- c(p_datos_centro - error_p_centro, p_datos_centro + error_p_centro)

# Imprimir resultados
cat("Clientes frecuentes en Sucursal Centro:", num_clientes_centro, "\n")
## Clientes frecuentes en Sucursal Centro: 13
cat("Muestra (n):", n_datos_centro, "\n")
## Muestra (n): 33
cat("Proporción muestral de clientes frecuentes en la muestra fue de:", round(p_datos_centro, 4), "\n")
## Proporción muestral de clientes frecuentes en la muestra fue de: 0.3939
cat("Intervalo de confianza (95%) de la población de clientes frecuentes está entre:", 
    round(IC_p_centro[1], 4), "y", round(IC_p_centro[2], 4), "\n")
## Intervalo de confianza (95%) de la población de clientes frecuentes está entre: 0.2272 y 0.5607

Estimación de la Varianza

varianza_norte <- (var(datos_norte$Ventas))  
n_norte <- nrow(datos_norte)  
gl_norte <- n_norte - 1  

# Cálculo del intervalo de confianza (95%) para la varianza
chi2_inf_norte <- qchisq(0.975, df = gl_norte)  
chi2_sup_norte <- qchisq(0.025, df = gl_norte)  
IC_varianza_norte <- c((gl_norte * varianza_norte) / chi2_inf_norte, 
                        (gl_norte * varianza_norte) / chi2_sup_norte)

# Imprimir resultados
cat("Varianza muestral de ingresos en Sucursal Norte:", round(varianza_norte, 4), "\n")
## Varianza muestral de ingresos en Sucursal Norte: 34273532
cat("Intervalo de confianza (95%) para la varianza de ventas de sucursal norte:", round(IC_varianza_norte[1], 4), round(IC_varianza_norte[2], 4), "\n")
## Intervalo de confianza (95%) para la varianza de ventas de sucursal norte: 22165387 59962119
varianza_sur <- var(datos_sur$Ventas)  
n_sur <- nrow(datos_sur)  
gl_sur <- n_sur - 1  

# Cálculo del intervalo de confianza (95%) para la varianza
chi2_inf_sur <- qchisq(0.975, df = gl_sur)  
chi2_sup_sur <- qchisq(0.025, df = gl_sur)  
IC_varianza_sur <- c((gl_sur * varianza_sur) / chi2_inf_sur, 
                      (gl_sur * varianza_sur) / chi2_sup_sur)

# Imprimir resultados
cat("Varianza muestral de ingresos en Sucursal Sur:", round(varianza_sur, 4), "\n")
## Varianza muestral de ingresos en Sucursal Sur: 29249848
cat("Intervalo de confianza (95%) para la varianza de ventas de sucursal sur:", round(IC_varianza_sur[1], 4), round(IC_varianza_sur[2], 4), "\n")
## Intervalo de confianza (95%) para la varianza de ventas de sucursal sur: 19028949 50677909
varianza_centro <- var(datos_centro$Ventas)  
n_centro <- nrow(datos_centro)  
gl_centro <- n_centro - 1  

# Cálculo del intervalo de confianza (95%) para la varianza
chi2_inf_centro <- qchisq(0.975, df = gl_centro)  
chi2_sup_centro <- qchisq(0.025, df = gl_centro)  
IC_varianza_centro <- c((gl_centro * varianza_centro) / chi2_inf_centro, 
                         (gl_centro * varianza_centro) / chi2_sup_centro)

# Imprimir resultados
cat("Varianza muestral de ingresos en Sucursal Centro:", round(varianza_centro, 4), "\n")
## Varianza muestral de ingresos en Sucursal Centro: 36077094
cat("Intervalo de confianza (95%) para la varianza de ventas de sucursal centro:", round(IC_varianza_centro[1], 4), "a", round(IC_varianza_centro[2], 4), "\n")
## Intervalo de confianza (95%) para la varianza de ventas de sucursal centro: 23331786 a 63117481

Diferencia de medias

media_norte <- mean(datos_norte$Ventas)
media_sur <- mean(datos_sur$Ventas)

sd_norte <- sd(datos_norte$Ventas)
sd_sur <- sd(datos_sur$Ventas)

n_norte <- nrow(datos_norte)
n_sur <- nrow(datos_sur)

diff_medias <- media_norte - media_sur

error_diff <- sqrt((sd_norte^2 / n_norte) + (sd_sur^2 / n_sur))

df_welch <- ((sd_norte^2 / n_norte + sd_sur^2 / n_sur)^2) /
            (((sd_norte^2 / n_norte)^2 / (n_norte - 1)) + ((sd_sur^2 / n_sur)^2 / (n_sur - 1)))

t_critico <- qt(0.975, df = df_welch)

IC_diff_medias <- c(diff_medias - t_critico * error_diff, diff_medias + t_critico * error_diff)

cat("Media de Ventas en Sucursal Norte:",round(media_norte, 2), "\n")
## Media de Ventas en Sucursal Norte: 16056.09
cat("Media de Ventas en Sucursal Sur:", round(media_sur, 2), "\n")
## Media de Ventas en Sucursal Sur: 14735.08
cat("Diferencia de medias de ventas:", round(diff_medias, 2), "\n")
## Diferencia de medias de ventas: 1321.01
cat("Intervalo de confianza (95%) para la diferencia de medias de ventas:", 
    round(IC_diff_medias[1], 2), round(IC_diff_medias[2], 2), "\n")
## Intervalo de confianza (95%) para la diferencia de medias de ventas: -1431.67 4073.68

Diferencia de proporciones de variable binaria

num_frecuentes_norte <- sum(datos_norte$Clientes_Frecuentes)
num_frecuentes_sur <- sum(datos_sur$Clientes_Frecuentes)

p_norte <- num_frecuentes_norte / nrow(datos_norte)
p_sur <- num_frecuentes_sur / nrow(datos_sur)

diff_proporciones <- p_norte - p_sur

error_diff_p <- sqrt((p_norte * (1 - p_norte) / nrow(datos_norte)) + 
                      (p_sur * (1 - p_sur) / nrow(datos_sur)))

z_critico <- qnorm(0.975)  

IC_diff_proporciones <- c(diff_proporciones - z_critico * error_diff_p, 
                           diff_proporciones + z_critico * error_diff_p)

cat("Proporción de clientes frecuentes en Sucursal Norte:", round(p_norte, 4), "\n")
## Proporción de clientes frecuentes en Sucursal Norte: 0.5152
cat("Proporción de clientes frecuentes en Sucursal Sur:", round(p_sur, 4), "\n")
## Proporción de clientes frecuentes en Sucursal Sur: 0.5882
cat("Diferencia de proporciones de clientes frecuentes:", round(diff_proporciones, 4), "\n")
## Diferencia de proporciones de clientes frecuentes: -0.0731
cat("Intervalo de confianza (95%) para la diferencia de proporciones:", 
    round(IC_diff_proporciones[1], 4), "a", round(IC_diff_proporciones[2], 4), "\n")
## Intervalo de confianza (95%) para la diferencia de proporciones: -0.3107 a 0.1645

Razón de varianzas

var_norte <- var(datos_norte$Ventas)
var_sur <- var(datos_sur$Ventas)

n_norte <- nrow(datos_norte)
n_sur <- nrow(datos_sur)

F_stat <- var_norte / var_sur

F_inf <- qf(0.975, df1 = n_norte-1, df2 = n_sur-1)  
F_sup <- qf(0.025, df1 = n_norte-1, df2 = n_sur-1)  

IC_F <- c(F_stat / F_inf, F_stat * F_sup)

cat("Varianza muestral en Sucursal Norte:", round(var_norte, 4), "\n")
## Varianza muestral en Sucursal Norte: 34273532
cat("Varianza muestral en Sucursal Sur:", round(var_sur, 4), "\n")
## Varianza muestral en Sucursal Sur: 29249848
cat("Estadístico F:", round(F_stat, 4), "\n")
## Estadístico F: 1.1718
cat("Intervalo de confianza (95%) para la razón de varianzas:", round(IC_F[1], 4), "a", round(IC_F[2], 4), "\n")
## Intervalo de confianza (95%) para la razón de varianzas: 0.583 a 0.5808

PRUEBAS DE HIPOTESIS

1. Prueba de hipotesis para la media con intervalo de confianza

Sede norte

# Parámetros muestrales
media_datos_norte <- mean(datos_norte$Ventas)  
sd_Ventas_datos_norte <- sd(datos_norte$Ventas)  
n_datos_norte <- nrow(datos_norte)

# Intervalo de confianza bilateral del 95%
t_critico <- qt(0.975, df = n_datos_norte - 1)
error_media_datos_norte <- t_critico * sd_Ventas_datos_norte / sqrt(n_datos_norte)
IC_media_datos_norte <- c(media_datos_norte - error_media_datos_norte, 
                          media_datos_norte + error_media_datos_norte)

# Hipótesis
mu_hipotetico <- 15000

# Conclusión basada en el intervalo
if (mu_hipotetico >= IC_media_datos_norte[1] && mu_hipotetico <= IC_media_datos_norte[2]) {
  conclusion <- "No se rechaza H0: no hay suficiente evidencia de que la media sea diferente de 15000"
} else {
  conclusion <- "Se rechaza H0: hay evidencia de que la media es diferente de 15000"
}

# Salida
cat("Hipótesis (prueba de igualdad):\n")
## Hipótesis (prueba de igualdad):
cat("H0: La media de ventas es igual a 15000\n")
## H0: La media de ventas es igual a 15000
cat("H1: La media de ventas es diferente de 15000\n\n")
## H1: La media de ventas es diferente de 15000
cat("Media muestral:", media_datos_norte, "\n")
## Media muestral: 16056.09
cat("Intervalo de confianza del 95% para la media: [", 
    IC_media_datos_norte[1], ",", IC_media_datos_norte[2], "]\n")
## Intervalo de confianza del 95% para la media: [ 13980.22 , 18131.95 ]
cat("Conclusión (basada en IC):", conclusion, "\n")
## Conclusión (basada en IC): No se rechaza H0: no hay suficiente evidencia de que la media sea diferente de 15000

Sede sur

# Parámetros muestrales
media_datos_sur <- mean(datos_sur$Ventas)  
sd_Ventas_datos_sur <- sd(datos_sur$Ventas)  
n_datos_sur <- nrow(datos_sur)

# Intervalo de confianza bilateral del 95%
t_critico <- qt(0.975, df = n_datos_sur - 1)
error_media_datos_sur <- t_critico * sd_Ventas_datos_sur / sqrt(n_datos_sur)
IC_media_datos_sur <- c(media_datos_sur - error_media_datos_sur, 
                        media_datos_sur + error_media_datos_sur)

# Hipótesis
mu_hipotetico <- 15000

# Conclusión basada en el intervalo
if (mu_hipotetico >= IC_media_datos_sur[1] && mu_hipotetico <= IC_media_datos_sur[2]) {
  conclusion <- "No se rechaza H0: no hay suficiente evidencia de que la media sea diferente de 15000"
} else {
  conclusion <- "Se rechaza H0: hay evidencia de que la media es diferente de 15000"
}

# Salida
cat("Hipótesis (prueba de igualdad):\n")
## Hipótesis (prueba de igualdad):
cat("H0: La media de ventas es igual a 15000\n")
## H0: La media de ventas es igual a 15000
cat("H1: La media de ventas es diferente de 15000\n\n")
## H1: La media de ventas es diferente de 15000
cat("Media muestral:", media_datos_sur, "\n")
## Media muestral: 14735.08
cat("Intervalo de confianza del 95% para la media: [", 
    IC_media_datos_sur[1], ",", IC_media_datos_sur[2], "]\n")
## Intervalo de confianza del 95% para la media: [ 12848.03 , 16622.13 ]
cat("Conclusión (basada en IC):", conclusion, "\n")
## Conclusión (basada en IC): No se rechaza H0: no hay suficiente evidencia de que la media sea diferente de 15000

Sede centro

# Parámetros muestrales
media_datos_centro <- mean(datos_centro$Ventas)  
sd_Ventas_datos_centro <- sd(datos_centro$Ventas)  
n_datos_centro <- nrow(datos_centro)

# Intervalo de confianza bilateral del 95%
t_critico <- qt(0.975, df = n_datos_centro - 1)
error_media_datos_centro <- t_critico * sd_Ventas_datos_centro / sqrt(n_datos_centro)
IC_media_datos_centro <- c(media_datos_centro - error_media_datos_centro, 
                            media_datos_centro + error_media_datos_centro)

# Hipótesis
mu_hipotetico <- 15000

# Conclusión basada en el intervalo
if (mu_hipotetico >= IC_media_datos_centro[1] && mu_hipotetico <= IC_media_datos_centro[2]) {
  conclusion <- "No se rechaza H0: no hay suficiente evidencia de que la media sea diferente de 15000"
} else {
  conclusion <- "Se rechaza H0: hay evidencia de que la media es diferente de 15000"
}

# Salida
cat("Hipótesis (prueba de igualdad):\n")
## Hipótesis (prueba de igualdad):
cat("H0: La media de ventas es igual a 15000\n")
## H0: La media de ventas es igual a 15000
cat("H1: La media de ventas es diferente de 15000\n\n")
## H1: La media de ventas es diferente de 15000
cat("Media muestral:", media_datos_centro, "\n")
## Media muestral: 17209.42
cat("Intervalo de confianza del 95% para la media: [", 
    IC_media_datos_centro[1], ",", IC_media_datos_centro[2], "]\n")
## Intervalo de confianza del 95% para la media: [ 15079.64 , 19339.2 ]
cat("Conclusión (basada en IC):", conclusion, "\n")
## Conclusión (basada en IC): Se rechaza H0: hay evidencia de que la media es diferente de 15000

2. Prueba de hipotesis para la media con valor p

Sede norte

# Paso 1: Valores que requiero
media_muestra <- mean(datos_norte$Ventas)
sd_muestra <- sd(datos_norte$Ventas)
n <- nrow(datos_norte)
mu_hipotetico <- 15000

# Paso 2: Calcular el estadístico t
t <- (media_muestra - mu_hipotetico) / (sd_muestra / sqrt(n))

# Paso 3: Calcular el valor p (cola derecha)
p_value <- pt(t, df = n - 1, lower.tail = FALSE)

# Paso 4: Comparar con el nivel de significancia
if (p_value < 0.05) {
  resultado <- "Se rechaza H0: hay evidencia de que la media es mayor a 15000"
} else {
  resultado <- "No se puede rechazar H0: no hay suficiente evidencia de que la media sea mayor a 15000"
}

# Paso 5: Mostrar resultados con cat()
cat("Hipótesis:\n")
## Hipótesis:
cat("H0: La media de ventas es menor o igual a 15000\n")
## H0: La media de ventas es menor o igual a 15000
cat("H1: La media de ventas es mayor a 15000\n\n")
## H1: La media de ventas es mayor a 15000
cat("Media muestral:", media_muestra, "\n")
## Media muestral: 16056.09
cat("Estadístico t:", t, "\n")
## Estadístico t: 1.036282
cat("Valor p:", p_value, "\n")
## Valor p: 0.1539192
cat("Conclusión:", resultado, "\n")
## Conclusión: No se puede rechazar H0: no hay suficiente evidencia de que la media sea mayor a 15000

Sede sur

# Paso 1: Valores que requiero
media_muestra <- mean(datos_sur$Ventas)
sd_muestra <- sd(datos_sur$Ventas)
n <- nrow(datos_sur)
mu_hipotetico <- 15000

# Paso 2: Calcular el estadístico t
t <- (media_muestra - mu_hipotetico) / (sd_muestra / sqrt(n))

# Paso 3: Calcular el valor p (cola derecha)
p_value <- pt(t, df = n - 1, lower.tail = FALSE)

# Paso 4: Comparar con el nivel de significancia
if (p_value < 0.05) {
  resultado <- "Se rechaza H0: hay evidencia de que la media es mayor a 15000"
} else {
  resultado <- "No se puede rechazar H0: no hay suficiente evidencia de que la media sea mayor a 15000"
}

# Paso 5: Mostrar resultados con cat()
cat("Hipótesis:\n")
## Hipótesis:
cat("H0: La media de ventas es menor o igual a 15000\n")
## H0: La media de ventas es menor o igual a 15000
cat("H1: La media de ventas es mayor a 15000\n\n")
## H1: La media de ventas es mayor a 15000
cat("Media muestral:", media_muestra, "\n")
## Media muestral: 14735.08
cat("Estadístico t:", t, "\n")
## Estadístico t: -0.2856184
cat("Valor p:", p_value, "\n")
## Valor p: 0.6115222
cat("Conclusión:", resultado, "\n")
## Conclusión: No se puede rechazar H0: no hay suficiente evidencia de que la media sea mayor a 15000

Sede centro

# Paso 1: Valores que requiero
media_muestra <- mean(datos_centro$Ventas)
sd_muestra <- sd(datos_centro$Ventas)
n <- nrow(datos_centro)
mu_hipotetico <- 15000

# Paso 2: Calcular el estadístico t
t <- (media_muestra - mu_hipotetico) / (sd_muestra / sqrt(n))

# Paso 3: Calcular el valor p (cola derecha)
p_value <- pt(t, df = n - 1, lower.tail = FALSE)

# Paso 4: Comparar con el nivel de significancia
if (p_value < 0.05) {
  resultado <- "Se rechaza H0: hay evidencia de que la media es mayor a 15000"
} else {
  resultado <- "No se puede rechazar H0: no hay suficiente evidencia de que la media sea mayor a 15000"
}

# Paso 5: Mostrar resultados con cat()
cat("Hipótesis:\n")
## Hipótesis:
cat("H0: La media de ventas es menor o igual a 15000\n")
## H0: La media de ventas es menor o igual a 15000
cat("H1: La media de ventas es mayor a 15000\n\n")
## H1: La media de ventas es mayor a 15000
cat("Media muestral:", media_muestra, "\n")
## Media muestral: 17209.42
cat("Estadístico t:", t, "\n")
## Estadístico t: 2.113097
cat("Valor p:", p_value, "\n")
## Valor p: 0.02124199
cat("Conclusión:", resultado, "\n")
## Conclusión: Se rechaza H0: hay evidencia de que la media es mayor a 15000

Prueba de hipotesis para la proporción con intervalo de confianza

Sede norte

# Parámetros muestrales
num_clientes_norte <- sum(datos_norte$Clientes_Frecuentes)
n_datos_norte <- nrow(datos_norte)

# Proporción muestral
p_datos_norte <- num_clientes_norte / n_datos_norte

# Intervalo de confianza del 95% para la proporción utilizando t
t_critico <- qt(0.975, df = n_datos_norte - 1)  # Distribución t
error_p_norte <- t_critico * sqrt((p_datos_norte * (1 - p_datos_norte)) / n_datos_norte)
IC_p_norte <- c(p_datos_norte - error_p_norte, p_datos_norte + error_p_norte)

# Hipótesis
p_hipotetico <- 0.5

# Conclusión basada en el intervalo de confianza
if (p_hipotetico < IC_p_norte[1] || p_hipotetico > IC_p_norte[2]) {
  conclusion <- "Se rechaza H0: la proporción de clientes frecuentes es diferente de 0.5"
} else {
  conclusion <- "No se puede rechazar H0: no hay suficiente evidencia de que la proporción de clientes frecuentes sea diferente de 0.5"
}

# Salida de resultados
cat("Hipótesis (prueba bilateral):\n")
## Hipótesis (prueba bilateral):
cat("H0: La proporción de clientes frecuentes es igual a 0.5\n")
## H0: La proporción de clientes frecuentes es igual a 0.5
cat("H1: La proporción de clientes frecuentes es diferente de 0.5\n\n")
## H1: La proporción de clientes frecuentes es diferente de 0.5
cat("Número de clientes frecuentes en Sucursal norte:", num_clientes_norte, "\n")
## Número de clientes frecuentes en Sucursal norte: 17
cat("Muestra (n):", n_datos_norte, "\n")
## Muestra (n): 33
cat("Proporción muestral de clientes frecuentes en la muestra fue de:", round(p_datos_norte, 4), "\n")
## Proporción muestral de clientes frecuentes en la muestra fue de: 0.5152
cat("Intervalo de confianza (95%) para la proporción: [", 
    round(IC_p_norte[1], 4), ",", round(IC_p_norte[2], 4), "]\n")
## Intervalo de confianza (95%) para la proporción: [ 0.3379 , 0.6924 ]
cat("Conclusión (basada en IC):", conclusion, "\n")
## Conclusión (basada en IC): No se puede rechazar H0: no hay suficiente evidencia de que la proporción de clientes frecuentes sea diferente de 0.5

Sede sur

# Parámetros muestrales
num_clientes_sur <- sum(datos_sur$Clientes_Frecuentes)
n_datos_sur <- nrow(datos_sur)

# Proporción muestral
p_datos_sur <- num_clientes_sur / n_datos_sur

# Intervalo de confianza del 95% para la proporción utilizando t
t_critico <- qt(0.975, df = n_datos_sur - 1)  # Distribución t
error_p_sur <- t_critico * sqrt((p_datos_sur * (1 - p_datos_sur)) / n_datos_sur)
IC_p_sur <- c(p_datos_sur - error_p_sur, p_datos_sur + error_p_sur)

# Hipótesis
p_hipotetico <- 0.5

# Conclusión basada en el intervalo de confianza
if (p_hipotetico < IC_p_sur[1] || p_hipotetico > IC_p_sur[2]) {
  conclusion <- "Se rechaza H0: la proporción de clientes frecuentes es diferente de 0.5"
} else {
  conclusion <- "No se puede rechazar H0: no hay suficiente evidencia de que la proporción de clientes frecuentes sea diferente de 0.5"
}

# Salida de resultados
cat("Hipótesis (prueba bilateral):\n")
## Hipótesis (prueba bilateral):
cat("H0: La proporción de clientes frecuentes es igual a 0.5\n")
## H0: La proporción de clientes frecuentes es igual a 0.5
cat("H1: La proporción de clientes frecuentes es diferente de 0.5\n\n")
## H1: La proporción de clientes frecuentes es diferente de 0.5
cat("Número de clientes frecuentes en Sucursal sur:", num_clientes_sur, "\n")
## Número de clientes frecuentes en Sucursal sur: 20
cat("Muestra (n):", n_datos_sur, "\n")
## Muestra (n): 34
cat("Proporción muestral de clientes frecuentes en la muestra fue de:", round(p_datos_sur, 4), "\n")
## Proporción muestral de clientes frecuentes en la muestra fue de: 0.5882
cat("Intervalo de confianza (95%) para la proporción: [", 
    round(IC_p_sur[1], 4), ",", round(IC_p_sur[2], 4), "]\n")
## Intervalo de confianza (95%) para la proporción: [ 0.4165 , 0.76 ]
cat("Conclusión (basada en IC):", conclusion, "\n")
## Conclusión (basada en IC): No se puede rechazar H0: no hay suficiente evidencia de que la proporción de clientes frecuentes sea diferente de 0.5

Sede centro

# Parámetros muestrales
num_clientes_centro <- sum(datos_centro$Clientes_Frecuentes)
n_datos_centro <- nrow(datos_centro)

# Proporción muestral
p_datos_centro <- num_clientes_centro / n_datos_centro

# Intervalo de confianza del 95% para la proporción utilizando t
t_critico <- qt(0.975, df = n_datos_centro - 1)  # Distribución t
error_p_centro <- t_critico * sqrt((p_datos_centro * (1 - p_datos_centro)) / n_datos_centro)
IC_p_centro <- c(p_datos_centro - error_p_centro, p_datos_centro + error_p_centro)

# Hipótesis
p_hipotetico <- 0.5

# Conclusión basada en el intervalo de confianza
if (p_hipotetico < IC_p_centro[1] || p_hipotetico > IC_p_centro[2]) {
  conclusion <- "Se rechaza H0: la proporción de clientes frecuentes es diferente de 0.5"
} else {
  conclusion <- "No se puede rechazar H0: no hay suficiente evidencia de que la proporción de clientes frecuentes sea diferente de 0.5"
}

# Salida de resultados
cat("Hipótesis (prueba bilateral):\n")
## Hipótesis (prueba bilateral):
cat("H0: La proporción de clientes frecuentes es igual a 0.5\n")
## H0: La proporción de clientes frecuentes es igual a 0.5
cat("H1: La proporción de clientes frecuentes es diferente de 0.5\n\n")
## H1: La proporción de clientes frecuentes es diferente de 0.5
cat("Número de clientes frecuentes en Sucursal centro:", num_clientes_centro, "\n")
## Número de clientes frecuentes en Sucursal centro: 13
cat("Muestra (n):", n_datos_centro, "\n")
## Muestra (n): 33
cat("Proporción muestral de clientes frecuentes en la muestra fue de:", round(p_datos_centro, 4), "\n")
## Proporción muestral de clientes frecuentes en la muestra fue de: 0.3939
cat("Intervalo de confianza (95%) para la proporción: [", 
    round(IC_p_centro[1], 4), ",", round(IC_p_centro[2], 4), "]\n")
## Intervalo de confianza (95%) para la proporción: [ 0.2207 , 0.5672 ]
cat("Conclusión (basada en IC):", conclusion, "\n")
## Conclusión (basada en IC): No se puede rechazar H0: no hay suficiente evidencia de que la proporción de clientes frecuentes sea diferente de 0.5

Prueba de hipotesis para la proporción con valor p

Sede norte

# Parámetros muestrales
num_clientes_norte <- sum(datos_norte$Clientes_Frecuentes)
n_datos_norte <- nrow(datos_norte)

# Proporción muestral
p_datos_norte <- num_clientes_norte / n_datos_norte

# Hipótesis
p_0 <- 0.5  # Proporción bajo la hipótesis nula

# Cálculo del estadístico t
t <- (p_datos_norte - p_0) / sqrt((p_0 * (1 - p_0)) / n_datos_norte)

# Cálculo del valor p para una cola derecha (unilateral)
p_value <- pt(t, df = n_datos_norte - 1, lower.tail = FALSE)

# Nivel de significancia
alpha <- 0.05

# Decisión basada en el valor p
if (p_value < alpha) {
  resultado <- "Se rechaza H0: hay evidencia de que la proporción es mayor a 0.5"
} else {
  resultado <- "No se puede rechazar H0: no hay suficiente evidencia de que la proporción sea mayor a 0.5"
}

# Salida de resultados
cat("Hipótesis (prueba unilateral):\n")
## Hipótesis (prueba unilateral):
cat("H0: La proporción es menor o igual a 0.5\n")
## H0: La proporción es menor o igual a 0.5
cat("H1: La proporción es mayor a 0.5\n\n")
## H1: La proporción es mayor a 0.5
cat("Proporción muestral de clientes frecuentes en la muestra fue de:", round(p_datos_norte, 4), "\n")
## Proporción muestral de clientes frecuentes en la muestra fue de: 0.5152
cat("Estadístico t calculado:", round(t, 4), "\n")
## Estadístico t calculado: 0.1741
cat("Valor p:", round(p_value, 4), "\n")
## Valor p: 0.4315
cat("Conclusión (basada en el valor p):", resultado, "\n")
## Conclusión (basada en el valor p): No se puede rechazar H0: no hay suficiente evidencia de que la proporción sea mayor a 0.5

Sede sur

# Parámetros muestrales para el sur
num_clientes_sur <- sum(datos_sur$Clientes_Frecuentes)
n_datos_sur <- nrow(datos_sur)

# Proporción muestral
p_datos_sur <- num_clientes_sur / n_datos_sur

# Hipótesis
p_0 <- 0.5  # Proporción bajo la hipótesis nula

# Cálculo del estadístico t
t <- (p_datos_sur - p_0) / sqrt((p_0 * (1 - p_0)) / n_datos_sur)

# Cálculo del valor p para una cola derecha (unilateral)
p_value <- pt(t, df = n_datos_sur - 1, lower.tail = FALSE)

# Nivel de significancia
alpha <- 0.05

# Decisión basada en el valor p
if (p_value < alpha) {
  resultado <- "Se rechaza H0: hay evidencia de que la proporción es mayor a 0.5"
} else {
  resultado <- "No se puede rechazar H0: no hay suficiente evidencia de que la proporción sea mayor a 0.5"
}

# Salida de resultados
cat("Hipótesis (prueba unilateral):\n")
## Hipótesis (prueba unilateral):
cat("H0: La proporción es menor o igual a 0.5\n")
## H0: La proporción es menor o igual a 0.5
cat("H1: La proporción es mayor a 0.5\n\n")
## H1: La proporción es mayor a 0.5
cat("Proporción muestral de clientes frecuentes en la muestra fue de:", round(p_datos_sur, 4), "\n")
## Proporción muestral de clientes frecuentes en la muestra fue de: 0.5882
cat("Estadístico t calculado:", round(t, 4), "\n")
## Estadístico t calculado: 1.029
cat("Valor p:", round(p_value, 4), "\n")
## Valor p: 0.1555
cat("Conclusión (basada en el valor p):", resultado, "\n")
## Conclusión (basada en el valor p): No se puede rechazar H0: no hay suficiente evidencia de que la proporción sea mayor a 0.5

Sede centro

# Parámetros muestrales para el centro
num_clientes_centro <- sum(datos_centro$Clientes_Frecuentes)
n_datos_centro <- nrow(datos_centro)

# Proporción muestral
p_datos_centro <- num_clientes_centro / n_datos_centro

# Hipótesis
p_0 <- 0.5  # Proporción bajo la hipótesis nula

# Cálculo del estadístico t
t <- (p_datos_centro - p_0) / sqrt((p_0 * (1 - p_0)) / n_datos_centro)

# Cálculo del valor p para una cola derecha (unilateral)
p_value <- pt(t, df = n_datos_centro - 1, lower.tail = FALSE)

# Nivel de significancia
alpha <- 0.05

# Decisión basada en el valor p
if (p_value < alpha) {
  resultado <- "Se rechaza H0: hay evidencia de que la proporción es mayor a 0.5"
} else {
  resultado <- "No se puede rechazar H0: no hay suficiente evidencia de que la proporción sea mayor a 0.5"
}

# Salida de resultados
cat("Hipótesis (prueba unilateral):\n")
## Hipótesis (prueba unilateral):
cat("H0: La proporción es menor o igual a 0.5\n")
## H0: La proporción es menor o igual a 0.5
cat("H1: La proporción es mayor a 0.5\n\n")
## H1: La proporción es mayor a 0.5
cat("Proporción muestral de clientes frecuentes en la muestra fue de:", round(p_datos_centro, 4), "\n")
## Proporción muestral de clientes frecuentes en la muestra fue de: 0.3939
cat("Estadístico t calculado:", round(t, 4), "\n")
## Estadístico t calculado: -1.2185
cat("Valor p:", round(p_value, 4), "\n")
## Valor p: 0.884
cat("Conclusión (basada en el valor p):", resultado, "\n")
## Conclusión (basada en el valor p): No se puede rechazar H0: no hay suficiente evidencia de que la proporción sea mayor a 0.5

Prueba de hipotesis para la varianza con intervalos de confianza

Sede norte

# Datos
varianza_hipotetica <- 35000000

# Estadísticos muestrales
varianza_norte <- var(datos_norte$Ventas)
n_norte <- nrow(datos_norte)
gl_norte <- n_norte - 1

# Valor del estadístico de prueba
chi2_obs <- (gl_norte * varianza_norte) / varianza_hipotetica

# Valores críticos para prueba bilateral (α = 0.05)
chi2_izq <- qchisq(0.025, df = gl_norte)
chi2_der <- qchisq(0.975, df = gl_norte)

# Decisión
rechazar_H0 <- chi2_obs < chi2_izq || chi2_obs > chi2_der

# Intervalo de confianza del 95%
IC_varianza_norte <- c((gl_norte * varianza_norte) / chi2_der,
                       (gl_norte * varianza_norte) / chi2_izq)

# Impresión organizada
cat("========================================\n")
## ========================================
cat(" PRUEBA DE HIPÓTESIS PARA LA VARIANZA \n")
##  PRUEBA DE HIPÓTESIS PARA LA VARIANZA
cat("========================================\n")
## ========================================
cat("Hipótesis nula (H0):     σ² = 35,000,000\n")
## Hipótesis nula (H0):     σ² = 35,000,000
cat("Hipótesis alternativa:   σ² ≠ 35,000,000\n\n")
## Hipótesis alternativa:   σ² ≠ 35,000,000
cat("Varianza muestral:", round(varianza_norte, 2), "\n")
## Varianza muestral: 34273532
cat("Grados de libertad:", gl_norte, "\n")
## Grados de libertad: 32
cat("Estadístico Chi-cuadrado observado:", round(chi2_obs, 4), "\n")
## Estadístico Chi-cuadrado observado: 31.3358
cat("Valores críticos:\n")
## Valores críticos:
cat("  Inferior (2.5%):", round(chi2_izq, 4), "\n")
##   Inferior (2.5%): 18.2908
cat("  Superior (97.5%):", round(chi2_der, 4), "\n\n")
##   Superior (97.5%): 49.4804
cat("Intervalo de confianza del 95% para σ²: [",
    round(IC_varianza_norte[1], 2), ",", round(IC_varianza_norte[2], 2), "]\n\n")
## Intervalo de confianza del 95% para σ²: [ 22165387 , 59962119 ]
if (rechazar_H0) {
  cat("Decisión: Se rechaza H₀. Evidencia suficiente para afirmar que σ² ≠ 35,000,000.\n")
} else {
  cat("Decisión: No se rechaza H₀. No hay evidencia suficiente para afirmar que σ² ≠ 35,000,000.\n")
}
## Decisión: No se rechaza H₀. No hay evidencia suficiente para afirmar que σ² ≠ 35,000,000.
cat("========================================\n")
## ========================================

Sede sur

# Datos
varianza_hipotetica <- 35000000

# Estadísticos muestrales
varianza_sur <- var(datos_sur$Ventas)
n_sur <- nrow(datos_sur)
gl_sur <- n_sur - 1

# Valor del estadístico de prueba
chi2_obs <- (gl_sur * varianza_sur) / varianza_hipotetica

# Valores críticos para prueba bilateral (α = 0.05)
chi2_izq <- qchisq(0.025, df = gl_sur)
chi2_der <- qchisq(0.975, df = gl_sur)

# Decisión
rechazar_H0 <- chi2_obs < chi2_izq || chi2_obs > chi2_der

# Intervalo de confianza del 95%
IC_varianza_sur <- c((gl_sur * varianza_sur) / chi2_der,
                    (gl_sur * varianza_sur) / chi2_izq)

# Impresión organizada
cat("========================================\n")
## ========================================
cat(" PRUEBA DE HIPÓTESIS PARA LA VARIANZA \n")
##  PRUEBA DE HIPÓTESIS PARA LA VARIANZA
cat("========================================\n")
## ========================================
cat("Hipótesis nula (H0):     σ² = 35,000,000\n")
## Hipótesis nula (H0):     σ² = 35,000,000
cat("Hipótesis alternativa:   σ² ≠ 35,000,000\n\n")
## Hipótesis alternativa:   σ² ≠ 35,000,000
cat("Varianza muestral:", round(varianza_sur, 2), "\n")
## Varianza muestral: 29249848
cat("Grados de libertad:", gl_sur, "\n")
## Grados de libertad: 33
cat("Estadístico Chi-cuadrado observado:", round(chi2_obs, 4), "\n")
## Estadístico Chi-cuadrado observado: 27.5784
cat("Valores críticos:\n")
## Valores críticos:
cat("  Inferior (2.5%):", round(chi2_izq, 4), "\n")
##   Inferior (2.5%): 19.0467
cat("  Superior (97.5%):", round(chi2_der, 4), "\n\n")
##   Superior (97.5%): 50.7251
cat("Intervalo de confianza del 95% para σ²: [",
    round(IC_varianza_sur[1], 2), ",", round(IC_varianza_sur[2], 2), "]\n\n")
## Intervalo de confianza del 95% para σ²: [ 19028949 , 50677909 ]
if (rechazar_H0) {
  cat("Decisión: Se rechaza H₀. Evidencia suficiente para afirmar que σ² ≠ 35,000,000.\n")
} else {
  cat("Decisión: No se rechaza H₀. No hay evidencia suficiente para afirmar que σ² ≠ 35,000,000.\n")
}
## Decisión: No se rechaza H₀. No hay evidencia suficiente para afirmar que σ² ≠ 35,000,000.
cat("========================================\n")
## ========================================

Sede centro

# Datos
varianza_hipotetica <- 35000000

# Estadísticos muestrales
varianza_centro <- var(datos_centro$Ventas)
n_centro <- nrow(datos_centro)
gl_centro <- n_centro - 1

# Valor del estadístico de prueba
chi2_obs <- (gl_centro * varianza_centro) / varianza_hipotetica

# Valores críticos para prueba bilateral (α = 0.05)
chi2_izq <- qchisq(0.025, df = gl_centro)
chi2_der <- qchisq(0.975, df = gl_centro)

# Decisión
rechazar_H0 <- chi2_obs < chi2_izq || chi2_obs > chi2_der

# Intervalo de confianza del 95%
IC_varianza_centro <- c((gl_centro * varianza_centro) / chi2_der,
                        (gl_centro * varianza_centro) / chi2_izq)

# Impresión organizada
cat("========================================\n")
## ========================================
cat(" PRUEBA DE HIPÓTESIS PARA LA VARIANZA \n")
##  PRUEBA DE HIPÓTESIS PARA LA VARIANZA
cat("========================================\n")
## ========================================
cat("Hipótesis nula (H0):     σ² = 35,000,000\n")
## Hipótesis nula (H0):     σ² = 35,000,000
cat("Hipótesis alternativa:   σ² ≠ 35,000,000\n\n")
## Hipótesis alternativa:   σ² ≠ 35,000,000
cat("Varianza muestral:", round(varianza_centro, 2), "\n")
## Varianza muestral: 36077094
cat("Grados de libertad:", gl_centro, "\n")
## Grados de libertad: 32
cat("Estadístico Chi-cuadrado observado:", round(chi2_obs, 4), "\n")
## Estadístico Chi-cuadrado observado: 32.9848
cat("Valores críticos:\n")
## Valores críticos:
cat("  Inferior (2.5%):", round(chi2_izq, 4), "\n")
##   Inferior (2.5%): 18.2908
cat("  Superior (97.5%):", round(chi2_der, 4), "\n\n")
##   Superior (97.5%): 49.4804
cat("Intervalo de confianza del 95% para σ²: [",
    round(IC_varianza_centro[1], 2), ",", round(IC_varianza_centro[2], 2), "]\n\n")
## Intervalo de confianza del 95% para σ²: [ 23331786 , 63117481 ]
if (rechazar_H0) {
  cat("Decisión: Se rechaza H₀. Evidencia suficiente para afirmar que σ² ≠ 35,000,000.\n")
} else {
  cat("Decisión: No se rechaza H₀. No hay evidencia suficiente para afirmar que σ² ≠ 35,000,000.\n")
}
## Decisión: No se rechaza H₀. No hay evidencia suficiente para afirmar que σ² ≠ 35,000,000.
cat("========================================\n")
## ========================================

Prueba de hipotesis para la varianza con valor p

Sede norte

# Parámetro bajo H0
varianza_hipotetica <- 35000000

# Estadísticos muestrales
varianza_norte <- var(datos_norte$Ventas)
n_norte <- nrow(datos_norte)
gl_norte <- n_norte - 1

# Estadístico de prueba
chi2_obs <- (gl_norte * varianza_norte) / varianza_hipotetica

# Cálculo del valor p (cola derecha)
p_valor <- pchisq(chi2_obs, df = gl_norte, lower.tail = FALSE)

# Decisión
rechazar_H0 <- p_valor < 0.05

# Impresión de resultados
cat("============================================\n")
## ============================================
cat(" PRUEBA DE HIPÓTESIS UNILATERAL (VARIANZA) \n")
##  PRUEBA DE HIPÓTESIS UNILATERAL (VARIANZA)
cat("============================================\n")
## ============================================
cat("Hipótesis nula (H0):     σ² ≤ 35,000,000\n")
## Hipótesis nula (H0):     σ² ≤ 35,000,000
cat("Hipótesis alternativa:   σ² > 35,000,000\n\n")
## Hipótesis alternativa:   σ² > 35,000,000
cat("Varianza muestral:", round(varianza_norte, 2), "\n")
## Varianza muestral: 34273532
cat("Grados de libertad:", gl_norte, "\n")
## Grados de libertad: 32
cat("Estadístico Chi² observado:", round(chi2_obs, 4), "\n")
## Estadístico Chi² observado: 31.3358
cat("Valor p:", round(p_valor, 5), "\n\n")
## Valor p: 0.5
if (rechazar_H0) {
  cat("Decisión: Se rechaza H₀. Hay evidencia suficiente para afirmar que σ² > 35,000,000.\n")
} else {
  cat("Decisión: No se rechaza H₀. No hay evidencia suficiente para afirmar que σ² > 35,000,000.\n")
}
## Decisión: No se rechaza H₀. No hay evidencia suficiente para afirmar que σ² > 35,000,000.
cat("============================================\n")
## ============================================

Sede sur

# Parámetro bajo H0
varianza_hipotetica <- 35000000

# Estadísticos muestrales
varianza_sur <- var(datos_sur$Ventas)
n_sur <- nrow(datos_sur)
gl_sur <- n_sur - 1

# Estadístico de prueba
chi2_obs <- (gl_sur * varianza_sur) / varianza_hipotetica

# Cálculo del valor p (cola derecha)
p_valor <- pchisq(chi2_obs, df = gl_sur, lower.tail = FALSE)

# Decisión
rechazar_H0 <- p_valor < 0.05

# Impresión de resultados
cat("============================================\n")
## ============================================
cat(" PRUEBA DE HIPÓTESIS UNILATERAL (VARIANZA) \n")
##  PRUEBA DE HIPÓTESIS UNILATERAL (VARIANZA)
cat("============================================\n")
## ============================================
cat("Hipótesis nula (H0):     σ² ≤ 35,000,000\n")
## Hipótesis nula (H0):     σ² ≤ 35,000,000
cat("Hipótesis alternativa:   σ² > 35,000,000\n\n")
## Hipótesis alternativa:   σ² > 35,000,000
cat("Varianza muestral:", round(varianza_sur, 2), "\n")
## Varianza muestral: 29249848
cat("Grados de libertad:", gl_sur, "\n")
## Grados de libertad: 33
cat("Estadístico Chi² observado:", round(chi2_obs, 4), "\n")
## Estadístico Chi² observado: 27.5784
cat("Valor p:", round(p_valor, 5), "\n\n")
## Valor p: 0.73385
if (rechazar_H0) {
  cat("Decisión: Se rechaza H₀. Hay evidencia suficiente para afirmar que σ² > 35,000,000.\n")
} else {
  cat("Decisión: No se rechaza H₀. No hay evidencia suficiente para afirmar que σ² > 35,000,000.\n")
}
## Decisión: No se rechaza H₀. No hay evidencia suficiente para afirmar que σ² > 35,000,000.
cat("============================================\n")
## ============================================

Sede centro

# Parámetro bajo H0
varianza_hipotetica <- 35000000

# Estadísticos muestrales
varianza_centro <- var(datos_centro$Ventas)
n_centro <- nrow(datos_centro)
gl_centro <- n_centro - 1

# Estadístico de prueba
chi2_obs <- (gl_centro * varianza_centro) / varianza_hipotetica

# Cálculo del valor p (cola derecha)
p_valor <- pchisq(chi2_obs, df = gl_centro, lower.tail = FALSE)

# Decisión
rechazar_H0 <- p_valor < 0.05

# Impresión de resultados
cat("============================================\n")
## ============================================
cat(" PRUEBA DE HIPÓTESIS UNILATERAL (VARIANZA) \n")
##  PRUEBA DE HIPÓTESIS UNILATERAL (VARIANZA)
cat("============================================\n")
## ============================================
cat("Hipótesis nula (H0):     σ² ≤ 35,000,000\n")
## Hipótesis nula (H0):     σ² ≤ 35,000,000
cat("Hipótesis alternativa:   σ² > 35,000,000\n\n")
## Hipótesis alternativa:   σ² > 35,000,000
cat("Varianza muestral:", round(varianza_centro, 2), "\n")
## Varianza muestral: 36077094
cat("Grados de libertad:", gl_centro, "\n")
## Grados de libertad: 32
cat("Estadístico Chi² observado:", round(chi2_obs, 4), "\n")
## Estadístico Chi² observado: 32.9848
cat("Valor p:", round(p_valor, 5), "\n\n")
## Valor p: 0.41875
if (rechazar_H0) {
  cat("Decisión: Se rechaza H₀. Hay evidencia suficiente para afirmar que σ² > 35,000,000.\n")
} else {
  cat("Decisión: No se rechaza H₀. No hay evidencia suficiente para afirmar que σ² > 35,000,000.\n")
}
## Decisión: No se rechaza H₀. No hay evidencia suficiente para afirmar que σ² > 35,000,000.
cat("============================================\n")
## ============================================

Prueba de hipotesis para la diferencia de medias con intervalo de confianza

# Calcular medias y desviaciones estándar
media_norte <- mean(datos_norte$Ventas)
media_sur <- mean(datos_sur$Ventas)

sd_norte <- sd(datos_norte$Ventas)
sd_sur <- sd(datos_sur$Ventas)

# Número de observaciones
n_norte <- nrow(datos_norte)
n_sur <- nrow(datos_sur)

# Diferencia de medias
diff_medias <- media_norte - media_sur

# Error estándar de la diferencia de medias
error_diff <- sqrt((sd_norte^2 / n_norte) + (sd_sur^2 / n_sur))

# Cálculo de los grados de libertad para la prueba de Welch
df_welch <- ((sd_norte^2 / n_norte + sd_sur^2 / n_sur)^2) /
            (((sd_norte^2 / n_norte)^2 / (n_norte - 1)) + ((sd_sur^2 / n_sur)^2 / (n_sur - 1)))

# Valor crítico t para un nivel de significancia de 0.05 (dos colas)
t_critico <- qt(0.975, df = df_welch)

# Intervalo de confianza al 95% para la diferencia de medias
IC_diff_medias <- c(diff_medias - t_critico * error_diff, diff_medias + t_critico * error_diff)

# Imprimir las hipótesis
cat("Hipótesis nula (H₀): No hay diferencia significativa entre las medias de ventas de las sucursales Norte y Sur (μ₁ - μ₂ = 0)\n")
## Hipótesis nula (H₀): No hay diferencia significativa entre las medias de ventas de las sucursales Norte y Sur (μ₁ - μ₂ = 0)
cat("Hipótesis alternativa (H₁): Hay una diferencia significativa entre las medias de ventas de las sucursales Norte y Sur (μ₁ - μ₂ ≠ 0)\n\n")
## Hipótesis alternativa (H₁): Hay una diferencia significativa entre las medias de ventas de las sucursales Norte y Sur (μ₁ - μ₂ ≠ 0)
# Resultados
cat("Media de Ventas en Sucursal Norte:", round(media_norte, 2), "\n")
## Media de Ventas en Sucursal Norte: 16056.09
cat("Media de Ventas en Sucursal Sur:", round(media_sur, 2), "\n")
## Media de Ventas en Sucursal Sur: 14735.08
cat("Diferencia de medias de ventas:", round(diff_medias, 2), "\n")
## Diferencia de medias de ventas: 1321.01
cat("Intervalo de confianza (95%) para la diferencia de medias de ventas:", 
    round(IC_diff_medias[1], 2), "a", round(IC_diff_medias[2], 2), "\n")
## Intervalo de confianza (95%) para la diferencia de medias de ventas: -1431.67 a 4073.68
# Prueba de hipótesis
if (IC_diff_medias[1] > 0 | IC_diff_medias[2] < 0) {
  cat("Rechazamos la hipótesis nula (H₀): Hay una diferencia significativa en las medias de ventas.")
} else {
  cat("No rechazamos la hipótesis nula (H₀): No hay una diferencia significativa en las medias de ventas.")
}
## No rechazamos la hipótesis nula (H₀): No hay una diferencia significativa en las medias de ventas.

Prueba de hipotesis para la diferencia de medias con valor p

# Calcular medias y desviaciones estándar
media_norte <- mean(datos_norte$Ventas)
media_sur <- mean(datos_sur$Ventas)

sd_norte <- sd(datos_norte$Ventas)
sd_sur <- sd(datos_sur$Ventas)

# Número de observaciones
n_norte <- nrow(datos_norte)
n_sur <- nrow(datos_sur)

# Diferencia de medias
diff_medias <- media_norte - media_sur

# Error estándar de la diferencia de medias
error_diff <- sqrt((sd_norte^2 / n_norte) + (sd_sur^2 / n_sur))

# Cálculo de los grados de libertad para la prueba de Welch
df_welch <- ((sd_norte^2 / n_norte + sd_sur^2 / n_sur)^2) /
            (((sd_norte^2 / n_norte)^2 / (n_norte - 1)) + ((sd_sur^2 / n_sur)^2 / (n_sur - 1)))

# Cálculo del valor t para la diferencia de medias
t_observado <- diff_medias / error_diff

# Cálculo del valor p (valor unilateral, cola derecha)
p_valor <- 1 - pt(t_observado, df = df_welch)

# Imprimir las hipótesis
cat("Hipótesis nula (H₀): La media de ventas de la sucursal Norte es menor o igual a la de la sucursal Sur (μ₁ - μ₂ ≤ 0)\n")
## Hipótesis nula (H₀): La media de ventas de la sucursal Norte es menor o igual a la de la sucursal Sur (μ₁ - μ₂ ≤ 0)
cat("Hipótesis alternativa (H₁): La media de ventas de la sucursal Norte es mayor que la de la sucursal Sur (μ₁ - μ₂ > 0)\n\n")
## Hipótesis alternativa (H₁): La media de ventas de la sucursal Norte es mayor que la de la sucursal Sur (μ₁ - μ₂ > 0)
# Resultados
cat("Media de Ventas en Sucursal Norte:", round(media_norte, 2), "\n")
## Media de Ventas en Sucursal Norte: 16056.09
cat("Media de Ventas en Sucursal Sur:", round(media_sur, 2), "\n")
## Media de Ventas en Sucursal Sur: 14735.08
cat("Diferencia de medias de ventas:", round(diff_medias, 2), "\n")
## Diferencia de medias de ventas: 1321.01
cat("Valor t observado:", round(t_observado, 2), "\n")
## Valor t observado: 0.96
cat("Valor p (prueba unilateral, cola derecha):", round(p_valor, 4), "\n")
## Valor p (prueba unilateral, cola derecha): 0.1707
# Decisión sobre la hipótesis
if (p_valor <= 0.05) {
  cat("Rechazamos la hipótesis nula (H₀): Hay una diferencia significativa en las medias de ventas (Norte > Sur).\n")
} else {
  cat("No rechazamos la hipótesis nula (H₀): No hay evidencia suficiente para afirmar que las ventas en Norte son mayores que en Sur.\n")
}
## No rechazamos la hipótesis nula (H₀): No hay evidencia suficiente para afirmar que las ventas en Norte son mayores que en Sur.

Prueba de hipotesis para la diferencia de porporciones con intervalos de confianza

# Imprimir las hipótesis
cat("Hipótesis:\n")
## Hipótesis:
cat("H0: No hay diferencia en las proporciones de clientes frecuentes entre las dos sucursales (p_norte = p_sur o p_norte - p_sur = 0)\n")
## H0: No hay diferencia en las proporciones de clientes frecuentes entre las dos sucursales (p_norte = p_sur o p_norte - p_sur = 0)
cat("H1: Hay una diferencia en las proporciones de clientes frecuentes entre las dos sucursales (p_norte != p_sur o p_norte - p_sur != 0)\n\n")
## H1: Hay una diferencia en las proporciones de clientes frecuentes entre las dos sucursales (p_norte != p_sur o p_norte - p_sur != 0)
# Cálculos de las proporciones
num_frecuentes_norte <- sum(datos_norte$Clientes_Frecuentes)
num_frecuentes_sur <- sum(datos_sur$Clientes_Frecuentes)

p_norte <- num_frecuentes_norte / nrow(datos_norte)
p_sur <- num_frecuentes_sur / nrow(datos_sur)

# Diferencia de proporciones
diff_proporciones <- p_norte - p_sur

# Error estándar de la diferencia de proporciones
error_diff_p <- sqrt((p_norte * (1 - p_norte) / nrow(datos_norte)) + 
                      (p_sur * (1 - p_sur) / nrow(datos_sur)))

# Z crítico para intervalo de confianza del 95%
z_critico <- qnorm(0.975)  

# Intervalo de confianza para la diferencia de proporciones
IC_diff_proporciones <- c(diff_proporciones - z_critico * error_diff_p, 
                           diff_proporciones + z_critico * error_diff_p)

# Imprimir resultados
cat("Proporción de clientes frecuentes en Sucursal Norte:", round(p_norte, 4), "\n")
## Proporción de clientes frecuentes en Sucursal Norte: 0.5152
cat("Proporción de clientes frecuentes en Sucursal Sur:", round(p_sur, 4), "\n")
## Proporción de clientes frecuentes en Sucursal Sur: 0.5882
cat("Diferencia de proporciones de clientes frecuentes:", round(diff_proporciones, 4), "\n")
## Diferencia de proporciones de clientes frecuentes: -0.0731
cat("Intervalo de confianza (95%) para la diferencia de proporciones:", 
    round(IC_diff_proporciones[1], 4), "a", round(IC_diff_proporciones[2], 4), "\n")
## Intervalo de confianza (95%) para la diferencia de proporciones: -0.3107 a 0.1645

`` ## Prueba de hipotesis para la diferencia de proporciones con valor p

# Imprimir las hipótesis
cat("Hipótesis:\n")
## Hipótesis:
cat("H0: p_norte <= p_sur (La proporción de clientes frecuentes en Sucursal Norte es menor o igual que en la Sucursal Sur)\n")
## H0: p_norte <= p_sur (La proporción de clientes frecuentes en Sucursal Norte es menor o igual que en la Sucursal Sur)
cat("H1: p_norte > p_sur (La proporción de clientes frecuentes en Sucursal Norte es mayor que en la Sucursal Sur)\n\n")
## H1: p_norte > p_sur (La proporción de clientes frecuentes en Sucursal Norte es mayor que en la Sucursal Sur)
# Cálculos de las proporciones
num_frecuentes_norte <- sum(datos_norte$Clientes_Frecuentes)
num_frecuentes_sur <- sum(datos_sur$Clientes_Frecuentes)

p_norte <- num_frecuentes_norte / nrow(datos_norte)
p_sur <- num_frecuentes_sur / nrow(datos_sur)

# Diferencia de proporciones
diff_proporciones <- p_norte - p_sur

# Error estándar de la diferencia de proporciones
error_diff_p <- sqrt((p_norte * (1 - p_norte) / nrow(datos_norte)) + 
                      (p_sur * (1 - p_sur) / nrow(datos_sur)))

# Estadístico Z
z_estadistico <- diff_proporciones / error_diff_p

# Valor p unilateral
p_value <- 1 - pnorm(z_estadistico)  # Solo una cola (unilateral)

# Imprimir resultados
cat("Proporción de clientes frecuentes en Sucursal Norte:", round(p_norte, 4), "\n")
## Proporción de clientes frecuentes en Sucursal Norte: 0.5152
cat("Proporción de clientes frecuentes en Sucursal Sur:", round(p_sur, 4), "\n")
## Proporción de clientes frecuentes en Sucursal Sur: 0.5882
cat("Diferencia de proporciones de clientes frecuentes:", round(diff_proporciones, 4), "\n")
## Diferencia de proporciones de clientes frecuentes: -0.0731
cat("Valor Z del estadístico:", round(z_estadistico, 4), "\n")
## Valor Z del estadístico: -0.6029
cat("Valor p (unilateral):", round(p_value, 4), "\n")
## Valor p (unilateral): 0.7267
# Decisión basada en el valor p y un nivel de significancia (α = 0.05)
if (p_value < 0.05) {
  cat("Rechazamos la hipótesis nula (H₀), hay suficiente evidencia para afirmar que p_norte > p_sur.\n")
} else {
  cat("No rechazamos la hipótesis nula (H₀), no hay suficiente evidencia para afirmar que p_norte > p_sur.\n")
}
## No rechazamos la hipótesis nula (H₀), no hay suficiente evidencia para afirmar que p_norte > p_sur.

Prueba de hipotesis para razon de varianzas con intervalos de confianza

# Definición de las hipótesis
cat("H0: Las varianzas son iguales (σ²_Norte = σ²_Sur)\n")
## H0: Las varianzas son iguales (σ²_Norte = σ²_Sur)
cat("H1: Las varianzas no son iguales (σ²_Norte ≠ σ²_Sur)\n\n")
## H1: Las varianzas no son iguales (σ²_Norte ≠ σ²_Sur)
# Cálculo de varianzas muestrales
var_norte <- var(datos_norte$Ventas)  # Varianza en la sucursal Norte
var_sur <- var(datos_sur$Ventas)      # Varianza en la sucursal Sur

n_norte <- nrow(datos_norte)  # Número de observaciones en la sucursal Norte
n_sur <- nrow(datos_sur)      # Número de observaciones en la sucursal Sur

F_stat <- var_norte / var_sur  # Estadístico F, que es el cociente de las varianzas

# Cálculo de los puntos críticos para el intervalo de confianza (95%)
F_inf <- qf(0.975, df1 = n_norte - 1, df2 = n_sur - 1)  # Punto inferior del IC
F_sup <- qf(0.025, df1 = n_norte - 1, df2 = n_sur - 1)  # Punto superior del IC

# Intervalo de confianza para la razón de varianzas
IC_F <- c(F_stat / F_inf, F_stat * F_sup)

# Imprimir los resultados
cat("Varianza muestral en Sucursal Norte:", round(var_norte, 4), "\n")
## Varianza muestral en Sucursal Norte: 34273532
cat("Varianza muestral en Sucursal Sur:", round(var_sur, 4), "\n")
## Varianza muestral en Sucursal Sur: 29249848
cat("Estadístico F:", round(F_stat, 4), "\n")
## Estadístico F: 1.1718
cat("Intervalo de confianza (95%) para la razón de varianzas:", round(IC_F[1], 4), "a", round(IC_F[2], 4), "\n")
## Intervalo de confianza (95%) para la razón de varianzas: 0.583 a 0.5808
# Verificar si el estadístico F cae dentro del intervalo
if (F_stat > IC_F[1] && F_stat < IC_F[2]) {
  cat("No se rechaza la hipótesis nula H0: Las varianzas son iguales.\n")
} else {
  cat("Se rechaza la hipótesis nula H0: Las varianzas no son iguales.\n")
}
## Se rechaza la hipótesis nula H0: Las varianzas no son iguales.

Prueba de hipotesis para la varianza utilizando valor p

# Definición de las hipótesis
cat("Hipótesis:\n")
## Hipótesis:
cat("H0: Las varianzas son iguales (σ²_Norte = σ²_Sur)\n")
## H0: Las varianzas son iguales (σ²_Norte = σ²_Sur)
cat("H1: Las varianzas no son iguales (σ²_Norte ≠ σ²_Sur)\n\n")
## H1: Las varianzas no son iguales (σ²_Norte ≠ σ²_Sur)
# Cálculo de varianzas muestrales
var_norte <- var(datos_norte$Ventas)  # Varianza en la sucursal Norte
var_sur <- var(datos_sur$Ventas)      # Varianza en la sucursal Sur

n_norte <- nrow(datos_norte)  # Número de observaciones en la sucursal Norte
n_sur <- nrow(datos_sur)      # Número de observaciones en la sucursal Sur

# Realizamos la prueba F para comparar varianzas
prueba_F <- var.test(datos_norte$Ventas, datos_sur$Ventas)

# Imprimir los resultados de la prueba
cat("Varianza muestral en Sucursal Norte:", round(var_norte, 4), "\n")
## Varianza muestral en Sucursal Norte: 34273532
cat("Varianza muestral en Sucursal Sur:", round(var_sur, 4), "\n")
## Varianza muestral en Sucursal Sur: 29249848
cat("Estadístico F:", round(prueba_F$statistic, 4), "\n")
## Estadístico F: 1.1718
cat("Valor p:", round(prueba_F$p.value, 4), "\n")
## Valor p: 0.6527
# Comprobar si el valor p es menor que el nivel de significancia
alpha <- 0.05  # Nivel de significancia

if (prueba_F$p.value < alpha) {
  cat("Se rechaza la hipótesis nula H0: Las varianzas no son iguales.\n")
} else {
  cat("No se rechaza la hipótesis nula H0: Las varianzas son iguales.\n")
}
## No se rechaza la hipótesis nula H0: Las varianzas son iguales.