## corrplot 0.95 loaded
Telco = read.table("Telco_Cusomer_Churn.csv", header=TRUE,sep=",",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
La distribución por género es equilibrada, con cantidades similares de hombres y mujeres. En cuanto a la antigüedad, los clientes son relativamente nuevos: la mitad lleva menos de 2 años y medio en la compañÃa, y solo una cuarta parte supera los 4 años y medio (55 meses).
Además, se observa que únicamente el 16% de los clientes son adultos mayores, mientras que la gran mayorÃa no lo son. También, la mayorÃa de clientes no tienen dependientes (70%) y un poco más de la mitad no tienen pareja, lo que puede indicar que gran parte de la base son personas solteras o sin cargas familiares.
Respecto a los servicios, casi todos cuentan con telefonÃa y más de dos tercios tienen internet (principalmente fibra óptica o DSL). Sin embargo, muchos no contratan servicios adicionales como seguridad en lÃnea, respaldo o soporte técnico.
attach(Telco)
nuevosDatos = data.frame(tenure,MonthlyCharges,TotalCharges)
r = cor(na.omit(nuevosDatos))
corrplot(r, method="number")
TotalCharges se correlaciona fuertemente con tenure y MonthlyCharges (lógico porque es acumulado).
La correlación entre tenure y MonthlyCharges suele ser baja, indicando que el tiempo en la empresa no determina mucho el costo mensual.
a=ggplot(Telco,aes(x=Churn, y=MonthlyCharges,fill=Churn)) +geom_boxplot()+labs(y="Cargos Mensuales",x="Rotacion")
a
Los clientes que abandonan suelen tener cargos mensuales más altos en comparación con los que permanecen.
b=ggplot(Telco,aes(x=Churn, y=TotalCharges,fill=Churn)) +geom_boxplot()+labs(y="Cargos Totales",x="Rotacion")
b
## Warning: Removed 11 rows containing non-finite outside the scale range
## (`stat_boxplot()`).
Quienes no abandonan tienden a tener cargos totales más altos, lo cual se explica porque han permanecido más tiempo en la compañÃa.
c=ggplot(Telco,aes(x=Churn,fill=gender))+geom_bar(position ="fill")+
labs(y="Proporción", x="Rotación", title="Rotación por Género") +
scale_y_continuous(labels=scales::percent)
c
No se observa gran diferencia entre géneros: la probabilidad de rotación es similar entre hombres y mujeres, podriamos decir que el genero no influye en la rotacion
cor(tenure,MonthlyCharges)
## [1] 0.2478999
modelo = lm(MonthlyCharges~ tenure)
summary(modelo)
##
## Call:
## lm(formula = MonthlyCharges ~ tenure)
##
## Residuals:
## Min 1Q Median 3Q Max
## -57.498 -27.251 6.245 24.943 54.376
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 54.92978 0.57476 95.57 <2e-16 ***
## tenure 0.30372 0.01415 21.47 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 29.15 on 7041 degrees of freedom
## Multiple R-squared: 0.06145, Adjusted R-squared: 0.06132
## F-statistic: 461 on 1 and 7041 DF, p-value: < 2.2e-16
d=ggplot(Telco, aes(tenure,MonthlyCharges)) +
geom_jitter() +
geom_smooth(method="lm") +
labs(title = "Digrama de dispersión Antiguedad vs Cargos Mensuales",
x = "Antiguedad", y = "Cargos")
d
## `geom_smooth()` using formula = 'y ~ x'
La correlación es baja (cercana a 0), confirmando poca relación lineal.
El modelo lineal arroja pendiente pequeña, lo que indica que la antigüedad no explica de forma relevante los cargos mensuales.
Intercepto: costo base estimado.
Pendiente: variación mÃnima del cargo mensual por cada mes adicional de permanencia.
## Warning: Removed 11 rows containing non-finite outside the scale range
## (`stat_boxplot()`).
## `geom_smooth()` using formula = 'y ~ x'