Análisis de ventas y comportamiento de clientes por tienda

El presente análisis se basa en 100 observaciones de tiendas, donde se analizan variables clave como ventas, clientes frecuentes y productos vendidos para evaluar el desempeño comercial.

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
datos <- read.csv("datos_negocios_var_5_ventas.csv")
head(datos)
##     Tienda Monto_Ventas Clientes_Frecuentes Productos_Vendidos
## 1 Tienda A     10880.85                   0                346
## 2 Tienda B     48635.34                   1                159
## 3 Tienda C     33066.81                   0                102
## 4 Tienda A     41198.95                   0                299
## 5 Tienda A     47513.59                   0                311
## 6 Tienda A     26147.79                   0                327
summary(datos)
##     Tienda           Monto_Ventas   Clientes_Frecuentes Productos_Vendidos
##  Length:100         Min.   :10294   Min.   :0.00        Min.   : 61.0     
##  Class :character   1st Qu.:19853   1st Qu.:0.00        1st Qu.:140.5     
##  Mode  :character   Median :30921   Median :0.00        Median :239.0     
##                     Mean   :31160   Mean   :0.45        Mean   :254.4     
##                     3rd Qu.:42604   3rd Qu.:1.00        3rd Qu.:353.5     
##                     Max.   :49187   Max.   :1.00        Max.   :486.0

El resumen estadístico muestra que el promedio de las ventas de las tiendas es de 31.160, con un promedio de 254 productos vendidos y una baja proporción de clientes frecuentes (0,45).

library(ggplot2)

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

Este gráfico muestra la variabilidad en el monto de ventas en cada tienda. Se pueden observar diferencias en la mediana y la dispersión de los datos, lo que indica que algunas tiendas presentan mayores niveles de ventas y una mayor variabilidad en comparación con otras.

clientes_frecuentes_tienda <- datos %>%
  group_by(Tienda) %>%
  summarise(Porcentaje_Clientes_Frecuentes = mean(Clientes_Frecuentes) * 100)

print(clientes_frecuentes_tienda)
## # A tibble: 3 × 2
##   Tienda   Porcentaje_Clientes_Frecuentes
##   <chr>                             <dbl>
## 1 Tienda A                           35.3
## 2 Tienda B                           41.9
## 3 Tienda C                           57.1

En la Tienda A, el 35,3% de los clientes son frecuentes.

En la Tienda B, el 41,9% de los clientes son frecuentes.

En la Tienda C, el 57,1% de los clientes son frecuentes.

CONCLUSION

La Tienda C presenta el mayor porcentaje de clientes frecuentes, lo que sugiere una mayor fidelización de clientes en comparación con las Tiendas A y B.

ggplot(datos, aes(x = Tienda, fill = as.factor(Clientes_Frecuentes))) +
  geom_bar(position = "dodge") +
  labs(title = "Número de Clientes Frecuentes por Tienda",
       x = "Tienda",
       y = "Frecuencia",
       fill = "Clientes Frecuentes") +
  scale_fill_manual(values = c("lightblue", "coral"), labels = c("No", "Sí")) +
  theme_minimal()

El anterior gráfico muestra la cantidad de clientes frecuentes y no frecuentes en cada tienda. Se pueden observar diferencias en la proporción de clientes recurrentes entre las tiendas, lo que permite identificar cuál presenta un mayor nivel de fidelización

ggplot(datos, aes(x = as.factor(Clientes_Frecuentes), y = Monto_Ventas, fill = as.factor(Clientes_Frecuentes))) +
  geom_boxplot() +
  labs(title = "Distribución de Ventas según Clientes Frecuentes",
       x = "Clientes Frecuentes",
       y = "Monto de Ventas") +
  scale_x_discrete(labels = c("0" = "No", "1" = "Sí")) +
  scale_fill_manual(values = c("lightblue", "coral")) +
  theme_minimal()

Las tiendas con presencia de clientes frecuentes tienden a registrar mayores montos de ventas. La mediana del monto de ventas es más alta en este grupo, lo que indica un mejor desempeño comercial. Asimismo, se observa una mayor dispersión, lo que sugiere variabilidad en los niveles de ventas cuando hay clientes recurrentes.

ggplot(datos, aes(x = Monto_Ventas)) +
  geom_histogram(binwidth = 5000, fill = "skyblue", color = "black", alpha = 0.7) +
  geom_density(aes(y = ..density.. * 5000), color = "blue", size = 1) +
  labs(title = "Distribución del Monto de Ventas",
       x = "Monto de 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 per session.
## 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 per session.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.

El anterior histograma nos muestra la distribución del monto de ventas, donde se observa que la mayor concentración de valores se encuentra entre 15.000 y 20.000, con una ligera asimetría hacia la derecha.