Ejercicio
Dada una matriz con ventas diarias de 4 productos a lo largo de una semana, realiza lo siguiente:
- Calcula la media y mediana por producto.
- Calcula la media y mediana por día.
- Calcula el desvío estándar por producto y el rango de ventas (diferencia entre valor máximo y mínimo) para cada producto.
ventas = np.array([
[20, 15, 25, 30, 18, 22, 24], # Producto A
[12, 20, 14, 8, 15, 18, 16], # Producto B
[35, 28, 32, 30, 26, 24, 30], # Producto C
[40, 38, 45, 42, 39, 41, 37] # Producto D
])
productos = np.array(['A', 'B', 'C', 'D'])
dias = np.array(['lunes', 'martes', 'miercoles', 'jueves', 'viernes', 'sabado', 'domingo'])
# Media y mediana por producto
media_producto = np.mean(ventas, axis=1)
mediana_producto = np.median(ventas, axis=1)
for i, prod in enumerate(productos):
print(f"Producto {prod}: Media = {media_producto[i]:.2f}, Mediana = {mediana_producto[i]:.2f}")
# Media y mediana por día
media_dia = np.mean(ventas, axis=0)
mediana_dia = np.median(ventas, axis=0)
for i, dia in enumerate(dias):
print(f"{dia}: Media = {media_dia[i]:.2f}, Mediana = {mediana_dia[i]:.2f}")
# Desvío estándar y rango por producto
std_productos = np.std(ventas, axis=1)
for i, prod in enumerate(productos):
rango = np.max(ventas[i]) - np.min(ventas[i])
print(f"Producto {prod}: Desvío estándar = {std_productos[i]:.2f}, Rango = {rango}")