Punto 2

Telco=read.table("Telco.csv", header=TRUE, sep=",",dec=".", row.names = 1, stringsAsFactors = TRUE)

summary(Telco)
##     gender     SeniorCitizen    Partner    Dependents     tenure     
##  Female:3488   Min.   :0.0000   No :3641   No :4933   Min.   : 0.00  
##  Male  :3555   1st Qu.:0.0000   Yes:3402   Yes:2110   1st Qu.: 9.00  
##                Median :0.0000                         Median :29.00  
##                Mean   :0.1621                         Mean   :32.37  
##                3rd Qu.:0.0000                         3rd Qu.:55.00  
##                Max.   :1.0000                         Max.   :72.00  
##                                                                      
##  PhoneService          MultipleLines     InternetService
##  No : 682     No              :3390   DSL        :2421  
##  Yes:6361     No phone service: 682   Fiber optic:3096  
##               Yes             :2971   No         :1526  
##                                                         
##                                                         
##                                                         
##                                                         
##              OnlineSecurity              OnlineBackup 
##  No                 :3498   No                 :3088  
##  No internet service:1526   No internet service:1526  
##  Yes                :2019   Yes                :2429  
##                                                       
##                                                       
##                                                       
##                                                       
##             DeviceProtection              TechSupport  
##  No                 :3095    No                 :3473  
##  No internet service:1526    No internet service:1526  
##  Yes                :2422    Yes                :2044  
##                                                        
##                                                        
##                                                        
##                                                        
##               StreamingTV              StreamingMovies           Contract   
##  No                 :2810   No                 :2785   Month-to-month:3875  
##  No internet service:1526   No internet service:1526   One year      :1473  
##  Yes                :2707   Yes                :2732   Two year      :1695  
##                                                                             
##                                                                             
##                                                                             
##                                                                             
##  PaperlessBilling                   PaymentMethod  MonthlyCharges  
##  No :2872         Bank transfer (automatic):1544   Min.   : 18.25  
##  Yes:4171         Credit card (automatic)  :1522   1st Qu.: 35.50  
##                   Electronic check         :2365   Median : 70.35  
##                   Mailed check             :1612   Mean   : 64.76  
##                                                    3rd Qu.: 89.85  
##                                                    Max.   :118.75  
##                                                                    
##   TotalCharges    Churn     
##  Min.   :  18.8   No :5174  
##  1st Qu.: 401.4   Yes:1869  
##  Median :1397.5             
##  Mean   :2283.3             
##  3rd Qu.:3794.7             
##  Max.   :8684.8             
##  NA's   :11

Interpretación estadísticas descriptivas

El análisis descriptivo del conjunto de datos sobre fuga de clientes en una compañía telefónica revela patrones relevantes para la retención.

La distribución por género es equilibrada. Solo el 16.2 % son adultos mayores, y la mayoría no tiene dependientes, lo que podría asociarse con mayor movilidad y menor fidelidad. El tiempo promedio de permanencia es de 32.37 meses, pero el 25 % de los clientes tienen menos de 9 meses con la compañía, lo que indica que la fuga ocurre principalmente en etapas tempranas.

En cuanto a servicios, el 90 % tiene servicio telefónico y la mayoría usa fibra óptica. Sin embargo, los servicios adicionales como seguridad, respaldo y soporte técnico tienen baja adopción, lo que sugiere oportunidades de mejora en comunicación y valor percibido.

El 60 % de los clientes están en contratos mensuales, lo que facilita la cancelación. Los contratos de uno o dos años presentan menor fuga, por lo que se recomienda incentivar compromisos a largo plazo. La facturación electrónica y los pagos automáticos están presentes en más de la mitad de los casos, lo que podría correlacionarse con mayor retención.

El cargo mensual promedio es de $64.76, y los clientes con cargos más altos podrían ser más exigentes. La tasa de fuga es del 26.5 %, lo que representa un desafío importante.

Lo que nos dicen las estadisticas entonces es que se deberia o se podrían enfocar estrategias en los primeros meses del cliente, promover contratos largos, mejorar la adopción de servicios complementarios y facilitar pagos automáticos para reducir la fuga.

Punto 3

library(corrplot)
## corrplot 0.95 loaded
attach(Telco)
datos= data.frame(tenure,MonthlyCharges, TotalCharges)

r =cor(na.omit(datos))
corrplot(r, method="number")

Interpretación matriz de correlación

tenure y TotalCharges (correlación: 0.83) Esta es la relación más fuerte del conjunto. Tiene sentido, ya que cuanto más tiempo permanece un cliente en la compañía, mayor será el total acumulado que ha pagado. Esta correlación alta sugiere que la antigüedad es un buen predictor del cargo total.

MonthlyCharges y TotalCharges (correlación: 0.65) Existe una correlación moderada entre el cargo mensual y el total acumulado. Esto indica que los clientes con cargos mensuales más altos tienden a acumular mayores cargos totales, aunque esta relación también depende del tiempo que hayan permanecido en la compañía.

tenure y MonthlyCharges (correlación: 0.25) Esta es la relación más débil. Sugiere que no hay una fuerte conexión entre cuánto tiempo lleva un cliente y cuánto paga mensualmente. Es posible que los cargos mensuales estén más relacionados con el tipo de servicios contratados que con la antigüedad.

library(ggplot2)


ggplot(data = Telco, aes(x = Churn, y = MonthlyCharges, fill = Churn)) +
  geom_boxplot() +
  scale_fill_manual(values = c("Yes" = "orange", "No" = "skyblue")) +
  labs(
    title = "Diagrama de Cajas: Cargos Mensuales vs Rotación",
    x = "Rotación (Churn)",
    y = "Cargos Mensuales (MonthlyCharges)"
  ) +
  theme_minimal()

Interpretación Punto 4

Los clientes con cargos mensuales más altos tienen mayor probabilidad de presentar rotación (Churn =Si), mientras que los que permanecen suelen pagar cargos más bajos o moderados.

Los clientes con cargos mensuales más altos tienden a abandonar el servicio con mayor frecuencia (rotación), posiblemente porque sus expectativas sobre calidad y beneficios no se ven satisfechas o proque siemplemente el servicio se les hace muy caro. En cambio, quienes pagan montos bajos o moderados suelen permanecer más tiempo, esto puede ser debido a que perciben mayor equilibrio entre costo y valor recibido. Esto sugiere que la compañía debe enfocar esfuerzos en mejorar la experiencia de los clientes que pagan más plata

Punto 5

library(ggplot2)


ggplot(data = Telco, aes(x = Churn, y = TotalCharges, fill = Churn)) +
  geom_boxplot() +
  scale_fill_manual(values = c("Yes" = "gray", "No" = "cyan")) +
  labs(
    title = "Diagrama de Cajas: Total Charges vs Rotación",
    x = "Rotación (Churn)",
    y = "Cargos Totales (TotalCharges)"
  ) +
  theme_minimal()

Interpretación Punto 5

En el diagrama de cajas se ve que los clientes que no se dieron de baja (Churn = No) tienen en general cargos totales más altos, mientras que los que sí se dieron de baja (Churn = Yes) tienen valores más bajos. Esto muestra que muchos clientes que abandonan la compañía lo hacen después de poco tiempo y por eso no alcanzan a acumular tantos cargos.

Punto 6

library(ggplot2)

ggplot(data = Telco, aes(x = Churn, fill = gender)) +
  geom_bar(position = "fill") +
  labs(
    title = "Proporción de Rotación según Género",
    x = "Rotación (Churn)",
    y = "Proporción"
  ) +
  scale_fill_manual(values = c("Male" = "skyblue", "Female" = "pink")) +
  theme_minimal()

Interpretación Punto 6

En el gráfico de barras se observa que la rotación (Churn) ocurre en proporciones similares entre hombres y mujeres. Esto indica que el género no parece tener una influencia fuerte en la decisión de abandonar la compañía.

Punto 7

library(ggplot2)

ggplot(Telco, aes(x=tenure, y=MonthlyCharges))+
  geom_jitter()+
  geom_smooth(method="lm", colour="red")+
  labs(title=" Antigüedad del cliente vs los cargos mensuales", X="tenure", y="MonthlyCharges")
## Ignoring unknown labels:
## • X : "tenure"
## `geom_smooth()` using formula = 'y ~ x'

Interpretación Punto 7

La gráfica de dispersión ilustra la relación entre la antigüedad del cliente (tenure) y los cargos mensuales (MonthlyCharges):

La línea de tendencia roja tiene una pendiente positiva, lo que indica que a medida que la antigüedad del cliente aumenta, sus cargos mensuales promedio también tienden a incrementarse.

Esto sugiere una relación positiva entre las dos variables, pero su fuerza es muy limitada, es decir, no nos dice mucho

De igual manera los puntos están extremadamente dispersos alrededor de la línea de tendencia.

Esta alta variabilidad significa que, sihay una tendencia general, la antigüedad del cliente (tenure) no es un factor determinante o un predictor confiable de los cargos mensuales de un cliente individual. Otras variables que no están en esta gráfica son los podrían principales impulsores del valor de MonthlyCharges, mas la antiguedad no lo es.

Punto 8

library(gridExtra)
library (ggplot2)


k1 = ggplot(data = Telco, aes(x = Churn, y = MonthlyCharges, fill = Churn)) +
  geom_boxplot() +
  scale_fill_manual(values = c("Yes" = "orange", "No" = "skyblue")) +
  labs(
    title = "Diagrama de Cajas: Cargos Mensuales vs Rotación",
    x = "Rotación (Churn)",
    y = "Cargos Mensuales (MonthlyCharges)"
  ) +
  theme_minimal()

k2 = ggplot(data = Telco, aes(x = Churn, y = TotalCharges, fill = Churn)) +
  geom_boxplot() +
  scale_fill_manual(values = c("Yes" = "gray", "No" = "cyan")) +
  labs(
    title = "Diagrama de Cajas: Total Charges vs Rotación",
    x = "Rotación (Churn)",
    y = "Cargos Totales (TotalCharges)"
  ) +
  theme_minimal()

k3 = ggplot(data = Telco, aes(x = Churn, fill = gender)) +
  geom_bar(position = "fill") +
  labs(
    title = "Proporción de Rotación según Género",
    x = "Rotación (Churn)",
    y = "Proporción"
  ) +
  scale_fill_manual(values = c("Male" = "skyblue", "Female" = "pink")) +
  theme_minimal()

k4 = 
ggplot(Telco, aes(x=tenure, y=MonthlyCharges))+
  geom_jitter()+
  geom_smooth(method="lm", colour="red")+
  labs(title=" Antigüedad del cliente vs los cargos mensuales", X="tenure", y="MonthlyCharges")



grid.arrange(k1, k2, k3, k4)
## Warning: Removed 11 rows containing non-finite outside the scale range
## (`stat_boxplot()`).
## Ignoring unknown labels:
## • X : "tenure"
## `geom_smooth()` using formula = 'y ~ x'

```