library(readr)
library(dplyr)
library(knitr)
streaming_ipu <- read_csv("streaming_ipu.csv")

Introducción

En este trabajo estaré analisando e identificando los factores que se relacionan con el ingreso mensual por usuario (IPU). Los datos se encuentran en la plataforma de Moodle.

Para n = 300 clientes, se registraron:

  • Plan (categórica): Basic, Standard, Premium.

  • Horas activas al mes (continua): tiempo de uso mensual.

  • IPU (continua): facturación mensual por usuario.

La gerencia sospecha que los usuarios del plan Premium utilizan más horas el servicio, pero que los descuentos y promociones frecuentes en ese plan reducen su ingreso neto promedio en comparación con el plan Standard, una vez que se controla por el tiempo de uso. Primero se ajustará el modelo para poder evaluar que efecto tiene el tiempo y el plan en el ingreso mensual.

data <- data.frame(
  n = 300,
  plan = streaming_ipu$plan,
  horas = streaming_ipu$horas_activas_mes,
  ipu = streaming_ipu$ipu_usd
)

Modelo de Regresión

Para este modelo se tiene que escoger ua categoría como referencia, en este caso se usará el Plan Premium. Esto se debe porque los coeficientes de las otras variables se pueden comparar con los de Plan Premium para poder ver como varían o su efecto.

data$plan <- factor(data$plan)
levels(data$plan)
## [1] "Basic"    "Premium"  "Standard"
data$plan<-relevel(data$plan, ref="Premium")
modelo <- lm(ipu ~ plan+horas, data = data)
summary(modelo)
## 
## Call:
## lm(formula = ipu ~ plan + horas, data = data)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -8.1927 -2.0258  0.0218  2.1624 10.2951 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   7.35582    1.30426   5.640 3.97e-08 ***
## planBasic    -2.03619    0.74489  -2.734  0.00664 ** 
## planStandard  1.23342    0.60320   2.045  0.04176 *  
## horas         0.16660    0.01664  10.010  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.36 on 296 degrees of freedom
## Multiple R-squared:  0.5561, Adjusted R-squared:  0.5516 
## F-statistic: 123.6 on 3 and 296 DF,  p-value: < 2.2e-16

Interpretación:

  • Intercepto -> Cuando las horas activas al mes es 0 el promedio del ingreso por usuario del plan premium es de 7.36.

  • PlanBasic -> Cuando las horas activas al mes es de 0 el PlanBasic es 2.036 menos que el plan Premium.

  • PlanStandard -> El plan standard tiene 1.23 más que el Plan premium cuando ambos tienen la misma cantidad de horas activas al año.

  • Horas -> El ingreso por usauario aumenta aproximadamente 0.16 unidades por cada hora adicional activa.

  • R^2 -> El modelo explica un 56% de la variación del ingreso por usuario al mes.

\[ \begin{aligned} \hat{\mu}_{\text{Premium}}(x) &= \beta_{0} + \beta_{\text{Horas}} \, x \\ \hat{\mu}_{\text{Basic}}(x) &= \beta_{0} + \beta_{\text{Basic}} + \beta_{\text{Horas}} \, x \\ \hat{\mu}_{\text{Standard}}(x) &= \beta_{0} + \beta_{\text{Standard}} + \beta_{\text{Horas}} \, x \end{aligned} \]

Predicciones del Modelo 90% de confianza

Cuando se ven los resultados del modelo de regresión se puede observar que su valores no es tan viable porque estan presentando que cuando la horas activa que tiene el usuario es 0 pues su ingreso aumenta X cantidad que sabemos que no es tan real una situción así. Así que lo que se hará es calcular el ingreso de cada usuario cuando esta activo 60 horas al mes para los tres planes. Esto se podrá lograr creando una predicción con un intervalo con una confanza de 90%.

ipu_esperado<- data.frame(
  plan=c("Basic", "Premium", "Standard"),
  horas=60
)
pred <-predict(modelo, ipu_esperado, interval="confidence", level=0.90)
cbind(ipu_esperado, pred)

Viendo los resultados de estas estimaciones se puede notar que el promedio mayor de los tres planes es el Standard con un valor de $18.5 por usuario cuando esta activo 60 horas al mes. El segundo plan con mayor ingreso cuando los usuarios estan activos por 60 horas es el Plan Premium con un ingreso de $17.35. Y el plan Básico termina con el menor ingreso por 60 horas activas al mes con un ingreso de $15.31. Es evidente decir que la hipotesis que quería plantar la gerencia es correcta que los usuarios del plan Premium utilizan más horas el servicio, pero que los descuentos y promociones frecuentes en ese plan reducen su ingreso neto promedio en comparación con el plan Standard, una vez que se controla por el tiempo de uso.

Conclusión

Los factores que más influyen en el ingreso promedio por usuario son el tipo de plan y las horas activas al mes, ya que el uso incrementa el ingreso mientras que las diferencias entre planes reflejan distintas estructuras de precios. El modelo demuestra que el plan Standard genera mayor ingreso promedio que el Premium, aun cuando se controla por el tiempo de uso.

Al controlar por las horas de uso, el efecto del tipo de plan se mantiene, lo que confirma que las políticas de precios y promociones específicas de cada plan afectan directamente el ingreso. Esto respalda la hipótesis de la gerencia de que el plan Premium tiene menor rentabilidad neta debido a sus descuentos.

En cuanto a la estrategia de precios y promociones, los resultados sugieren que la empresa debería revisar las ofertas del plan Premium y potenciar el valor del Standard como opción rentable. Además, incentivar un mayor tiempo de uso podría aumentar los ingresos promedio sin necesidad de depender tanto de descuentos.