Adidas es una reconocida compañía multinacional alemana fundada en 1949 por Adolf “Adi” Dassler, consolidada hoy en día como uno de los líderes mundiales en el diseño y fabricación de calzado, ropa y accesorios deportivos y de moda urbana. La marca, cuyo nombre surge de la combinación del apodo de su fundador (“Adi”) y las primeras letras de su apellido (“Das”), es famosa globalmente por su icónico logotipo de las tres tiras y su fuerte presencia en disciplinas como el fútbol, el running y el baloncesto. Más allá de su enfoque en el alto rendimiento atlético, Adidas ha logrado un impacto masivo en la cultura popular y el estilo de vida contemporáneo a través de su línea Originals y colaboraciones con diseñadores de renombre, manteniendo un constante compromiso con la innovación tecnológica, el confort y la sostenibilidad en la industria textil global.
El análisis exploratorio de datos (EDA) permite comprender el comportamiento de las ventas y la rentabilidad de Adidas. A través de este análisis, se busca identificar patrones, comparar el desempeño de los productos, regiones y métodos de venta, y evaluar la distribución de las principales variables financieras.
Para ello, se utilizaron estadísticas descriptivas y visualizaciones que permiten analizar las ventas totales, las unidades vendidas, la utilidad operativa y el margen operativo. Estos resultados facilitan la identificación de diferencias entre segmentos y la interpretación del desempeño comercial y financiero de la empresa.
PASO 1. Instalar y cargar librerias
# Cargar librerías necesarias
library(readxl)
library(dplyr)
library(ggplot2)
library(plotly)
library(knitr)
library(kableExtra)
library(tidyr)
library(RecordLinkage)
library(leaflet)
library(htmltools)
PASO 2: Filtar o seleccionar la información que necesito
Se realiza una exploración de la base de datos de Adidas con el propósito de identificar las variables relevantes para el análisis de las ventas y la rentabilidad.
Se tienen en cuenta variables como el producto, la región, la ciudad, el distribuidor, el precio por unidad, las unidades vendidas, las ventas totales, la utilidad operativa, el margen operativo y el método de venta.
El objetivo es organizar la información para realizar comparaciones entre los diferentes segmentos comerciales y financieros de la empresa.
library(readxl)
datos<- read_excel("~/Downloads/DatosCaso1 (1).xlsx")
# Exploración y preparación de la base de datos de Adidas
id=1:dim(datos)[1]
datos=data.frame(id,datos)
#Filtro
require(RecordLinkage)
# Carga y organización de los datos de Adidas
# Preparación de los datos para el análisis descriptivo
# Extrae solo esas filas y las guarda en datos_sub.
# Selección de variables relevantes para Adidas
datos_sub <- datos %>%
select(
distribuidor,
region,
estado,
ciudad,
producto,
precio_unidad,
unidades_vendidas,
ventas_total,
utilidad_operativa,
margen_operativo,
metodo_venta
)
# Mostrar las primeras filas
head(datos_sub)
| distribuidor | region | estado | ciudad | producto | precio_unidad | unidades_vendidas | ventas_total | utilidad_operativa | margen_operativo | metodo_venta |
|---|---|---|---|---|---|---|---|---|---|---|
| Foot Locker | Northeast | New York | New York | Men’s Street Footwear | 50 | 1200 | 60000 | 30000.0 | 0.50 | In-store |
| Foot Locker | Northeast | New York | New York | Men’s Athletic Footwear | 50 | 1000 | 50000 | 15000.0 | 0.30 | In-store |
| Foot Locker | Northeast | New York | New York | Women’s Street Footwear | 40 | 1000 | 40000 | 14000.0 | 0.35 | In-store |
| Foot Locker | Northeast | New York | New York | Women’s Athletic Footwear | 45 | 850 | 38250 | 13387.5 | 0.35 | In-store |
| Foot Locker | Northeast | New York | New York | Men’s Apparel | 60 | 900 | 54000 | 16200.0 | 0.30 | In-store |
| Foot Locker | Northeast | New York | New York | Women’s Apparel | 50 | 1000 | 50000 | 12500.0 | 0.25 | In-store |
Ahora obtenemos los nombres exactos de las variables que tenemos en la base de datos
library(readxl)
library(tidyverse)
# Cargar la base de datos de Adidas
datos <- read_excel("~/Downloads/DatosCaso1 (1).xlsx")
# Mostrar los nombres de las columnas
names(datos)
## [1] "distribuidor" "region" "estado"
## [4] "ciudad" "producto" "precio_unidad"
## [7] "unidades_vendidas" "ventas_total" "utilidad_operativa"
## [10] "margen_operativo" "metodo_venta"
# Comparación de precios por producto
library(dplyr)
library(dplyr)
comparacion_producto <- datos_sub %>%
group_by(producto) %>%
summarise(
precio_promedio = mean(precio_unidad, na.rm = TRUE),
precio_minimo = min(precio_unidad, na.rm = TRUE),
precio_maximo = max(precio_unidad, na.rm = TRUE),
cantidad = n()
)
comparacion_producto
| producto | precio_promedio | precio_minimo | precio_maximo | cantidad |
|---|---|---|---|---|
| Men’s Apparel | 50.32192 | 16 | 95 | 1606 |
| Men’s Athletic Footwear | 43.77950 | 11 | 95 | 1610 |
| Men’s Street Footwear | 44.23665 | 7 | 95 | 1610 |
| Women’s Apparel | 51.60075 | 14 | 110 | 1608 |
| Women’s Athletic Footwear | 41.11270 | 7 | 90 | 1606 |
| Women’s Street Footwear | 40.25249 | 7 | 95 | 1608 |
## Registros totales de la base de datos de Adidas
Indicadores de tendencia central
## Se calculan los indicadores de tendencia central
## de las principales variables de Adidas:
## precio por unidad, unidades vendidas,
## ventas totales, utilidad operativa y margen operativo.
## Los resultados se organizan en una tabla.
#na.rm: ignora valores faltantes (NA) para evitar errores en el cálculo.
# INDICADORES DE TENDENCIA CENTRAL DE ADIDAS
# Promedio de las variables principales
promedio_precio = mean(datos$precio_unidad, na.rm = TRUE)
promedio_unidades = mean(datos$unidades_vendidas, na.rm = TRUE)
promedio_ventas = mean(datos$ventas_total, na.rm = TRUE)
promedio_utilidad = mean(datos$utilidad_operativa, na.rm = TRUE)
promedio_margen = mean(datos$margen_operativo, na.rm = TRUE)
# Mediana de las variables principales
mediana_precio = median(datos$precio_unidad, na.rm = TRUE)
mediana_unidades = median(datos$unidades_vendidas, na.rm = TRUE)
mediana_ventas = median(datos$ventas_total, na.rm = TRUE)
mediana_utilidad = median(datos$utilidad_operativa, na.rm = TRUE)
mediana_margen = median(datos$margen_operativo, na.rm = TRUE)
# Crear tabla de resultados
resultado_prom = data.frame(
Variable = c(
"Precio por unidad",
"Unidades vendidas",
"Ventas totales",
"Utilidad operativa",
"Margen operativo"
),
Promedio = c(
promedio_precio,
promedio_unidades,
promedio_ventas,
promedio_utilidad,
promedio_margen
),
Mediana = c(
mediana_precio,
mediana_unidades,
mediana_ventas,
mediana_utilidad,
mediana_margen
)
)
# Mostrar resultados
resultado_prom
| Variable | Promedio | Mediana |
|---|---|---|
| Precio por unidad | 4.521663e+01 | 45.00 |
| Unidades vendidas | 2.569300e+02 | 176.00 |
| Ventas totales | 1.245508e+04 | 7803.50 |
| Utilidad operativa | 4.894794e+03 | 3262.98 |
| Margen operativo | 4.229913e-01 | 0.41 |
## **Mediana de las variables de Adidas**
# Calcular la mediana de las variables principales
# Calcular la mediana de las variables principales
mediana_precio <- median(datos$precio_unidad, na.rm = TRUE)
mediana_unidades <- median(datos$unidades_vendidas, na.rm = TRUE)
mediana_ventas <- median(datos$ventas_total, na.rm = TRUE)
mediana_utilidad <- median(datos$utilidad_operativa, na.rm = TRUE)
mediana_margen <- median(datos$margen_operativo, na.rm = TRUE)
### Indicadores de centralidad y variabilidad del precio por unidad de Adidas
# Indicadores del precio por unidad de Adidas
promedio_precio <- mean(datos$precio_unidad, na.rm = TRUE)
mediana_precio <- median(datos$precio_unidad, na.rm = TRUE)
minimo_precio <- min(datos$precio_unidad, na.rm = TRUE)
maximo_precio <- max(datos$precio_unidad, na.rm = TRUE)
desvest_precio <- sd(datos$precio_unidad, na.rm = TRUE)
# Crear tabla de resultados
indic_precio <- data.frame(
Promedio = promedio_precio,
Mediana = mediana_precio,
Minimo = minimo_precio,
Maximo = maximo_precio,
Desviacion_Estandar = desvest_precio
)
indic_precio
| Promedio | Mediana | Minimo | Maximo | Desviacion_Estandar |
|---|---|---|---|---|
| 45.21663 | 45 | 7 | 110 | 14.7054 |
## Indicadores de centralidad y variabilidad para las unidades vendidas de Adidas
# Indicadores de las unidades vendidas de Adidas
promedio_unidades <- mean(datos$unidades_vendidas, na.rm = TRUE)
mediana_unidades <- median(datos$unidades_vendidas, na.rm = TRUE)
minimo_unidades <- min(datos$unidades_vendidas, na.rm = TRUE)
maximo_unidades <- max(datos$unidades_vendidas, na.rm = TRUE)
desvest_unidades <- sd(datos$unidades_vendidas, na.rm = TRUE)
# Crear tabla de resultados
indic_unidades <- data.frame(
Promedio = promedio_unidades,
Mediana = mediana_unidades,
Minimo = minimo_unidades,
Maximo = maximo_unidades,
Desviacion_Estandar = desvest_unidades
)
indic_unidades
| Promedio | Mediana | Minimo | Maximo | Desviacion_Estandar |
|---|---|---|---|---|
| 256.93 | 176 | 0 | 1275 | 214.252 |
Histograma
Ahora creamos histogramas de las principales variables de Adidas para analizar la distribución de los datos e identificar patrones en las ventas y el precio por unidad.
# Histograma del precio por unidad
hist(
datos$precio_unidad,
main = "Distribución del precio por unidad",
xlab = "Precio por unidad",
ylab = "Frecuencia"
)
# Histograma de las unidades vendidas
hist(
datos$unidades_vendidas,
main = "Distribución de las unidades vendidas",
xlab = "Unidades vendidas",
ylab = "Frecuencia"
)
# Histograma de las ventas totales
hist(
datos$ventas_total,
main = "Distribución de las ventas totales",
xlab = "Ventas totales",
ylab = "Frecuencia"
)
# Crear y mostrar el histograma del precio por unidad de Adidas
# Histograma interactivo del precio por unidad
library(ggplot2)
library(plotly)
grafico_precio <- ggplot(datos, aes(x = precio_unidad)) +
geom_histogram(
binwidth = 10,
fill = "steelblue",
color = "black",
alpha = 0.6
) +
labs(
title = "Distribución del precio por unidad de Adidas",
x = "Precio por unidad",
y = "Frecuencia"
) +
theme_minimal()
ggplotly(grafico_precio)
La Figura 1 muestra la distribución del precio por unidad de los productos de Adidas. El histograma permite identificar la concentración de los precios, la variabilidad y los posibles valores extremos.
Distribución de precios:
El histograma permite observar los rangos de precios en los que se concentran los productos de Adidas. Esta distribución ayuda a comprender la estructura de precios de la marca y la diversidad de productos que ofrece.
Concentración de precios:
Se pueden identificar los rangos que presentan una mayor frecuencia de productos. Esto permite analizar si los precios se concentran en determinados segmentos o si existe una distribución amplia.
Dispersión y variabilidad:
La distribución de los precios permite observar las diferencias entre los productos de menor y mayor valor. Una mayor dispersión puede indicar que Adidas maneja diferentes segmentos de precios, desde productos más accesibles hasta productos de mayor valor.
Conclusión:
El histograma facilita el análisis del comportamiento de los precios por unidad de los productos de Adidas, permitiendo identificar patrones y diferencias en la estructura de precios de la empresa.
# Crear y mostrar el histograma interactivo
ggplotly(
ggplot(datos, aes(x = unidades_vendidas)) +
geom_histogram(
binwidth = 100,
fill = "green",
color = "black",
alpha = 0.6
) +
labs(
title = "Figura 2. Histograma de unidades vendidas de Adidas",
x = "Unidades vendidas",
y = "Frecuencia"
) +
theme_minimal()
)
La Figura 2 muestra la distribución de las unidades vendidas de los productos de Adidas. El histograma permite identificar la concentración de las ventas, la variabilidad y los posibles valores extremos.
Distribución de las unidades vendidas:
La distribución permite observar los rangos de unidades vendidas que presentan mayor frecuencia. Esto ayuda a comprender el comportamiento de las ventas de los productos de Adidas.
Modos y agrupaciones:
El histograma permite identificar los intervalos con mayor concentración de unidades vendidas. Estos grupos pueden mostrar cuáles son los niveles de ventas más frecuentes dentro de los datos analizados.
Dispersión y rango de unidades vendidas:
La diferencia entre los valores mínimos y máximos permite analizar la variabilidad de las unidades vendidas. Una distribución amplia puede indicar diferencias importantes en el volumen de ventas entre los productos.
Posibles valores atípicos:
Los valores de unidades vendidas que se encuentren muy alejados de la mayoría de los datos podrían representar productos con volúmenes de ventas particularmente altos o bajos.
Conclusión:
El histograma facilita la comprensión de la distribución de las unidades vendidas de Adidas y permite identificar patrones de ventas y diferencias en el comportamiento de los productos.
Boxplot
Ahora creamos el boxplot del precio por unidad de los productos de Adidas para analizar la distribución, dispersión y posibles valores atípicos.
# Crear y mostrar el boxplot interactivo del precio por unidad
ggplotly(
ggplot(datos, aes(y = precio_unidad)) +
geom_boxplot(
fill = "lightblue",
color = "black",
outlier.colour = "red",
outlier.shape = 16,
outlier.size = 3
) +
labs(
title = "Figura 3. Boxplot del precio por unidad de Adidas",
y = "Precio por unidad"
) +
theme_minimal()
)
El boxplot muestra la distribución del precio por unidad de los productos de Adidas y permite analizar la mediana, la dispersión y los posibles valores atípicos.
Mediana:
La línea dentro de la caja representa la mediana del precio por unidad. Este valor divide los datos en dos partes: el 50% de los productos tiene un precio inferior o igual a la mediana y el otro 50% tiene un precio superior.
Rango Intercuartílico (IQR):
El rango intercuartílico representa el 50% central de los precios. La caja permite identificar los valores del primer cuartil (Q1) y del tercer cuartil (Q3), mostrando la concentración de los precios de los productos de Adidas.
Rango y dispersión:
Los bigotes del boxplot permiten observar la extensión de los precios que no se consideran valores atípicos. La longitud de la caja y de los bigotes ayuda a analizar la variabilidad de los precios por unidad.
Posibles valores atípicos:
Los puntos que aparecen fuera de los bigotes pueden representar productos con precios particularmente altos o bajos en comparación con el resto de los datos.
Conclusión:
El boxplot permite comprender la distribución del precio por unidad de Adidas, identificar la concentración de los precios y analizar posibles diferencias entre los productos.
# Crear y mostrar el boxplot interactivo de las unidades vendidas
ggplotly(
ggplot(datos, aes(y = unidades_vendidas)) +
geom_boxplot(
fill = "green",
color = "black",
outlier.colour = "red",
outlier.shape = 16,
outlier.size = 3
) +
labs(
title = "Figura 4. Boxplot de las unidades vendidas de Adidas",
y = "Unidades vendidas"
) +
theme_minimal()
)
El boxplot muestra la distribución de las unidades vendidas de los productos de Adidas, permitiendo analizar la dispersión, la mediana y los posibles valores atípicos.
Mediana:
La línea dentro de la caja representa la mediana de las unidades vendidas. Este valor divide los datos en dos partes: el 50% de los productos registra ventas inferiores o iguales a la mediana y el otro 50% presenta ventas superiores.
Rango Intercuartílico (IQR):
La caja representa el 50% central de las unidades vendidas, entre el primer cuartil (Q1) y el tercer cuartil (Q3). Esto permite identificar la concentración de los datos.
Rango y dispersión:
Los bigotes muestran la extensión de los valores que no se consideran atípicos. La longitud de la caja permite analizar la variabilidad en las unidades vendidas de los productos de Adidas.
Valores Atípicos:
Los puntos que aparecen fuera de los bigotes pueden representar productos con volúmenes de ventas significativamente altos o bajos en comparación con el resto.
Conclusión:
El boxplot permite analizar la distribución de las unidades vendidas e identificar diferencias en el comportamiento comercial de los productos de Adidas.``
Opción 2
# Gráfico interactivo con correlación entre precio y unidades vendidas
g2 <- ggplot(
datos,
aes(x = unidades_vendidas, y = precio_unidad)
) +
geom_point(color = "purple", alpha = 0.8, size = 2) +
geom_smooth(method = "loess", color = "grey", se = TRUE) +
labs(
title = paste(
"Figura 5. Relación entre unidades vendidas y precio por unidad\nCoef. de correlación:",
round(cor(datos$unidades_vendidas, datos$precio_unidad, use = "complete.obs"), 2)
),
x = "Unidades vendidas",
y = "Precio por unidad",
caption = "Fuente: Datos de Adidas"
) +
theme_minimal()
ggplotly(g2)
Interpretación Figura 5.
Este gráfico muestra la relación entre el precio por unidad y las unidades vendidas de los productos de Adidas.
Tendencia general:
El gráfico permite analizar si existe una relación entre el precio de los productos y la cantidad de unidades vendidas.
Patrones clave:
Se observa cómo varían las unidades vendidas según el precio de los productos. Esta relación permite identificar posibles patrones de comportamiento en las ventas.
Coeficiente de correlación:
El coeficiente de correlación permite medir la intensidad y dirección de la relación entre el precio por unidad y las unidades vendidas.
Nota: El valor de la correlación debe interpretarse según el resultado obtenido en el análisis de los datos de Adidas.
Hallazgos relevantes:
La relación entre el precio y las unidades vendidas permite analizar el comportamiento de los consumidores y la demanda de los productos.
Otros factores, como la marca, el tipo de producto, las promociones y las preferencias de los consumidores, también pueden influir en las ventas. ## Representación espacial de la información
## Gráfico de ventas por región
library(ggplot2)
library(plotly)
g_region = ggplot(datos, aes(x = region, y = ventas_total)) +
geom_boxplot(fill = "purple") +
labs(
title = "Distribución de ventas por región - Adidas",
x = "Región",
y = "Ventas totales"
) +
theme_minimal()
ggplotly(g_region)
Qué tipo de decisiones se podrian hacer de acuerdo al análisis previamente realizado? El análisis realizado permite tomar decisiones estratégicas para Adidas, como:
Decisiones de ventas: Identificar las regiones y productos con mayores ventas para fortalecer su comercialización. Decisiones de precios: Analizar los precios por unidad para establecer estrategias competitivas. Decisiones de inventario: Ajustar la disponibilidad de productos según la demanda y las unidades vendidas. Decisiones de marketing: Diseñar campañas dirigidas a los productos y regiones con mayor potencial de ventas. Decisiones de rentabilidad: Identificar los productos con mayor utilidad operativa para optimizar los recursos de la empresa.
A partir del análisis descriptivo y exploratorio de los datos de Adidas, se identificaron los siguientes hallazgos:
1. Desempeño por producto
El producto con mayores ventas totales es Men’s Street Footwear, con ventas de aproximadamente 27,68 millones y una utilidad operativa de 11,63 millones. Women’s Apparel ocupa el segundo lugar en ventas, con aproximadamente 23,87 millones.
2. Rentabilidad
El margen operativo promedio de la base de datos es aproximadamente del 42%. Men’s Street Footwear presenta un margen promedio del 45%, mientras que Men’s Athletic Footwear registra un margen cercano al 40%.
3. Métodos de venta
El canal Online concentra las mayores ventas totales, con aproximadamente 44,97 millones, y presenta un margen operativo promedio del 46%. En comparación, el canal In-store registra un margen promedio del 36%.
4. Diferencias por región
La región West presenta las mayores ventas totales, con aproximadamente 36,44 millones. Sin embargo, la región South registra un margen operativo promedio superior, cercano al 47%.
5. Relación entre variables
El análisis de correlación muestra una relación positiva entre el precio por unidad y las ventas totales. No obstante, la correlación no implica causalidad, por lo que es necesario considerar otros factores que influyen en el desempeño comercial y financiero.
El análisis realizado permite identificar diferencias en el desempeño comercial y financiero de Adidas según el producto, la región y el método de venta.
Men’s Street Footwear destaca por su participación en las ventas totales y su utilidad operativa, mientras que el canal Online presenta resultados relevantes en ventas y margen operativo promedio.
Los resultados muestran que las ventas elevadas no necesariamente implican el mayor margen operativo, por lo que es importante analizar tanto el volumen de ventas como la rentabilidad.
Asimismo, las diferencias regionales evidencian la necesidad de evaluar las características de cada mercado antes de establecer estrategias comerciales.
1. Fortalecer el canal Online
Adidas podría evaluar la posibilidad de ampliar sus estrategias de venta digital, teniendo en cuenta que este canal presenta las mayores ventas totales y un margen operativo promedio superior al de los otros métodos de venta.
2. Analizar el desempeño de los productos
Se recomienda realizar un seguimiento periódico de las ventas, unidades vendidas y utilidad operativa por producto, con el fin de identificar oportunidades de mejora y optimizar la asignación de recursos comerciales.
3. Implementar estrategias diferenciadas por región
Adidas podría adaptar sus estrategias de precios, promociones e inventario según el comportamiento de las ventas y la rentabilidad de cada región.
4. Evaluar la rentabilidad de los canales de venta
Es importante analizar los costos asociados a cada método de venta para determinar cuáles generan mejores resultados financieros y dónde existen oportunidades de optimización.
5. Fortalecer el análisis basado en datos
Se recomienda que Adidas utilice indicadores de ventas, margen operativo y utilidad para realizar un seguimiento continuo de su desempeño y apoyar futuras decisiones comerciales.