###Ejercicio:

Una empresa de comercio electrónico (e-commerce) está preocupada por la *lealtad de sus clientes después de implementar tres diferentes tipos de campañas publicitarias** durante el último trimestre:

Campaña A: Orientada al Descuento (Énfasis en promociones y precios bajos).

Campaña B: Orientada a la Marca (Énfasis en valores, misión y diferenciación del producto).

Campaña C: Orientada al Servicio (Énfasis en soporte post-venta, envío rápido y garantías).

El equipo de marketing desea saber si existe una diferencia significativa en el nivel promedio de lealtad del cliente (medido con una escala de Likert de 1 a 100, donde 100 es la máxima lealtad) entre los clientes que fueron expuestos principalmente a cada una de estas campañas.

Se ha seleccionado una muestra aleatoria de clientes expuestos a cada campaña.

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(tidyr)

# Número de clientes por campaña:
n <- 30 

# Creamos datos aleatorios de niveles de lealtad para cada uno de los 90 clientes
# distribuidos entre las campañas que sigan una DISTRIBUCIÓN NORMAL con el fin de
# que podamos hacer la prueba ANOVA
campaign_A <- round(rnorm(n, mean = 67.5, sd = 5.8), 1)
campaign_B <- round(rnorm(n, mean = 83.0, sd = 6.2), 1)
campaign_C <- round(rnorm(n, mean = 75.0, sd = 5.5), 1)

# Llenamos la tabla con los datos creados anteriormente:
Cliente <- 1:n
datos_lealtad_largo <- data.frame(
  campaign_A = campaign_A,
  campaign_B = campaign_B,
  campaign_C = campaign_C
)

print(datos_lealtad_largo)
##    campaign_A campaign_B campaign_C
## 1        67.4       78.6       76.0
## 2        67.4       84.4       84.0
## 3        62.3       97.3       71.9
## 4        70.4       74.2       71.0
## 5        60.3       77.2       70.4
## 6        71.5       82.6       76.3
## 7        63.1       77.8       84.3
## 8        72.8       84.0       81.9
## 9        61.9       68.6       73.7
## 10       76.7       94.4       84.8
## 11       63.2       83.1       78.7
## 12       67.1       91.8       65.4
## 13       71.3       75.1       73.5
## 14       72.4       75.1       76.9
## 15       75.5       81.8       91.0
## 16       72.3       85.3       73.6
## 17       65.5       89.8       77.5
## 18       60.9       78.5       77.0
## 19       71.9       69.3       78.8
## 20       62.2       83.6       71.5
## 21       64.6       79.7       75.8
## 22       63.1       81.1       64.9
## 23       64.4       94.5       75.7
## 24       70.4       85.7       91.9
## 25       66.8       86.3       84.0
## 26       74.9       76.7       66.8
## 27       59.5       73.5       79.3
## 28       52.6       83.4       74.1
## 29       57.9       82.2       78.3
## 30       67.2       83.9       76.6

De la anterior tabla podemos obtener la media o el promedio de lealtad por tipo de campaña:

datos_lealtad_largo_transformado <- datos_lealtad_largo %>%
  pivot_longer(
    # Columnas a pivotar: todas excepto las que tienen las puntuaciones
    cols = starts_with("campaign_"),
    # Nombre de la nueva columna que contendrá los nombres de las campañas
    names_to = "Campaña",
    # Nombre de la nueva columna que contendrá las puntuaciones de lealtad
    values_to = "Lealtad"
  )

# --- 3. Cálculo de Promedios (Usando group_by y summarise) ---
promedios_por_campaña <- datos_lealtad_largo_transformado %>%
  group_by(Campaña) %>%
  summarise(
    Media_Lealtad = mean(Lealtad),
    DS_Lealtad = sd(Lealtad),
    Clientes = n()
  )

print(promedios_por_campaña)
## # A tibble: 3 × 4
##   Campaña    Media_Lealtad DS_Lealtad Clientes
##   <chr>              <dbl>      <dbl>    <int>
## 1 campaign_A          66.6       5.75       30
## 2 campaign_B          82.0       7.03       30
## 3 campaign_C          76.9       6.53       30

Ahora aplicamos la prueba de Shapiro-Wilk con el fin de determinar si los datos recolectados en cada campaña tienen una distribución normal:

cat("--- Test de Shapiro-Wilk para Campaña A (Descuento) ---\n")
## --- Test de Shapiro-Wilk para Campaña A (Descuento) ---
test_A <- shapiro.test(campaign_A)
print(test_A)
## 
##  Shapiro-Wilk normality test
## 
## data:  campaign_A
## W = 0.97521, p-value = 0.6888
cat("\n--- Test de Shapiro-Wilk para Campaña B (Marca) ---\n")
## 
## --- Test de Shapiro-Wilk para Campaña B (Marca) ---
test_B <- shapiro.test(campaign_B)
print(test_B)
## 
##  Shapiro-Wilk normality test
## 
## data:  campaign_B
## W = 0.97414, p-value = 0.6574
cat("\n--- Test de Shapiro-Wilk para Campaña C (Servicio) ---\n")
## 
## --- Test de Shapiro-Wilk para Campaña C (Servicio) ---
test_C <- shapiro.test(campaign_C)
print(test_C)
## 
##  Shapiro-Wilk normality test
## 
## data:  campaign_C
## W = 0.96585, p-value = 0.4328

Como todos los p-valores son mayores que α=0.05, tenemos un dataset de datos con distribución normal.

¿Existen diferencias estadísticamente significativas en el nivel promedio de lealtad del cliente entre los grupos expuestos a las tres diferentes campañas publicitarias (Descuento, Marca y Servicio)?

H0: Las medias poblacionales de la lealtad del cliente son iguales para los clientes expuestos a la Campaña A (Descuento), Campaña B (Marca) y Campaña C (Servicio). El tipo de campaña no tiene un efecto significativo en la lealtad.

\[\mathbf{H_0: \mu_A = \mu_B = \mu_C}\]

H1: Al menos una de las medias poblacionales de lealtad del cliente es diferente de las demás. El tipo de campaña sí tiene un efecto significativo en la lealtad del cliente.

\[\mathbf{H_1: \text{Al menos una } \mu_i \neq \mu_j}\] #### Aplicamos la prueba ANOVA para ver si se rechaza o se prueba la H0:

modelo_anova <- aov(Lealtad ~ Campaña, data = datos_lealtad_largo_transformado)

# La función 'summary()' se usa para mostrar la tabla de resultados del ANOVA.
cat("--- Resultado del Test ANOVA ---\n")
## --- Resultado del Test ANOVA ---
print(summary(modelo_anova))
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## Campaña      2   3689  1844.7   44.25 5.54e-14 ***
## Residuals   87   3627    41.7                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Tenemos que:

\[p\text{-valor } (1.52e^{-10}) \ll \alpha (0.05)\]

Interpretación:

Existe evidencia estadísticamente muy fuerte para probar la hipótesis nula, lo que quiere decir que la lealtad del cliente son iguales entre las tres campañas. La diferencia observada en la lealtad promedio de los clientes expuestos a la Campaña A, Campaña B y Campaña C no es producto del azar.