Como hacer Ciencia de Datos (Data Science) a los productos de una Tienda de Postres – Parte 14
Demo
Continuamos con el Post anterior llamado Como hacer Análisis a los productos de una Tienda de Postres mediante Data Science – Parte 13 en donde analizamos los Datos de Bebidas Consumidas según el Horario de la tienda, específicamente las Ventas de Bebidas por la Mañana (9AM – 12PM) y en este nuevo Post analizaremos datos similares, pero del horario de la Tarde (12PM – 6PM), vamos con ello.
Partes
Antes de continuar con este Post te recomiendo leer los siguientes artículos:
- Que es la Ciencia de Datos (Data Science)
- Errores que impiden hacer uso de las mejores prácticas de la Ciencia de Datos (Data Science)
- Como usar el Lenguaje de Programación R en Jupyter Notebook
Asimismo te invito a escuchar el Podcast: Si No Tienes Experiencia Para Un Puesto De Trabajo, Créala !
Sound Cloud:
Spotify:
Bien ahora continuemos con el Post: Como hacer Análisis a los productos de una Tienda de Postres mediante Data Science – Parte 14.
Entonces los siguientes datos que analizaré, son los Datos de Bebidas Consumidas según el Horario de la tienda, específicamente las Ventas de Bebidas por la Tarde (12PM – 6PM).
Para mantener un orden de mis consultas voy a crear un nuevo archivo, para esto dentro de Jupyter voy a File > New Notebook > Python 3
En este nuevo Documento analizaré las Ventas de Bebidas por la Tarde (12PM – 6PM).
Datos de Bebidas Consumidas según el Horario de la tienda: Ventas de Bebidas por la Tarde (12PM – 6PM)
En primer lugar voy a importar la librería pandas y le asigno el nombre de variable pd
import pandas import pandas as pd
Luego creo una variable con el nombre ventas y en su interior hago la lectura del archivo ventas.json en donde se encuentran todas las ventas realizadas durante el día en la Tienda de Postres. Además crearé una variable llamada datos y dentro de ella defino las columnas para mi tabla en donde mostraré las ventas realizadas por la Tarde, estas columnas son id, producto, categoria, cliente, dni, fnacimientocliente, precio, img, created_at y updated_at
ventas = pandas.read_json("ventas.json", orient="split", encoding="utf-8") datos = pd.DataFrame( ventas, columns = ['id', 'producto', 'categoria', 'cliente', 'dni', 'fnacimientocliente', 'precio', 'img', 'created_at', 'updated_at']) datos
Nota: El archivo ventas.json lo exporte en la Parte 5 de este tutorial.
En la consulta haré uso de la columna categoria del archivo ventas.json, ya que necesito saber la categoría a la cual pertenece un producto.
Bien con el código anterior voy a imprimir una Tabla con todas las ventas realizadas en la Tienda de Postres, para esto presiono el botón Run y obtengo la Tabla con las columnas que especifique en la variable datos
Paso seguido voy a obtener las ventas realizadas en el horario de la tarde voy usar la columna de tipo fecha o timestamp llamada created_at esta contiene la hora, fecha, minuto, segundos y milisegundos de una venta realizada.
datos['created_at'] = pd.to_datetime(datos['created_at'])
Aca voy a declarar 3 variables, una llamada hi (Hora inicial), otra llamada hf (Hora final) y categoria (Categoría del producto).
Ahora dentro de la variable hi colocaré el valor de las 12 PM (12:00:00.000000) y en la variable hf colocaré el valor 18 PM (18:00:00.000000), las horas las especifico en formato de 24 horas, en la variable categoria coloco el valor bebida, ya que es la categoría de productos que quiero analizar.
hi = '2019-09-16 12:00:00.000000' hf = '2019-09-16 18:00:00.000000' categoria = 'bebida'
Nota: Las ventas que estoy analizando en todo el Tutorial se realizaron el día 16-09-2019
Ya que quiero leer las ventas realizadas de los productos de la categoría bebidas, voy a usar la columna categoria, esta columna contiene el nombre de la categoría de un producto.
datos['categoria'] = datos[['categoria']]
Paso seguido creo una variable con el nombre filtrar y dentro de ella hago uso de operadores lógicos en Python para filtrar las ventas realizadas desde las 12PM hasta las 6PM, para esto paso las variables hi y hf que contienen los rangos de horarios a analizar y al final la variable categoria.
Consulto si la columna created_at es mayor o igual a la Hora inicial (hi) y si la columna created_at es menor o igual a la Hora final (hf), y al final consulto si la columna categoria es igual al valor bebida, el cual asigne a la variable categoria.
filtrar = (datos['created_at'] >= hi) & (datos['created_at'] <= hf) & (datos['categoria']== categoria)
Luego defino una variable llamada resultado y en su interior obtendré las ventas filtradas haciendo uso del método .loc al cual le paso la variable filtrar
resultado = datos.loc[filtrar] resultado
Ahora presiono el botón Run y obtengo una tabla con las ventas realizadas de 12 PM a 6 PM, es decir en el Turno Tarde de los productos correspondientes a la categoría bebidas.
En la imagen anterior puedes ver que obtuve solo algunas bebidas, es una cantidad menor a otras consultas anteriores, esto es porque seleccione solos productos pertenecientes a la categoría bebida.
Los datos de la tabla con las ventas realizadas en la Tarde pertenecientes a la categoría bebida los voy a mostrar en un gráfico Plot, para esto importo la librería matplotlib.pyplot y le doy el nombre de variable plot
Defino el ancho y alto 20, 11 del gráfico, estas medidas son en pulgadas.
import matplotlib.pyplot as plot plot.rcParams["figure.figsize"] = 20,11 # ancho: 20 , alto: 11
Ahora le paso la variable resultado la cual había creado anteriormente y le indico que imprima las columnas producto y created_at
resultado.plot(x="producto", y="created_at")
Le doy clic al botón Run y se me imprime un gráfico Plot con las ventas realizadas de 12 PM a 6 PM pertenecientes a la categoría bebida.
Acá te compartiré el código completo
import pandas import pandas as pd # Lectura del archivo ventas.json ventas = pandas.read_json("ventas.json", orient="split", encoding="utf-8") datos = pd.DataFrame( ventas, columns = ['id', 'producto', 'cliente', 'dni', 'fnacimientocliente', 'precio', 'img', 'created_at', 'updated_at']) datos # Obtener Ventas realizas de 12PM a 6PM datos['created_at'] = pd.to_datetime(datos['created_at']) hi = '2019-09-16 12:00:00.000000' hf = '2019-09-16 18:00:00.000000' categoria = 'bebida' # Obtener los productos pertenecientes a la categoría 'bebida' datos['categoria'] = datos[['categoria']] filtrar = (datos['created_at'] >= hi) & (datos['created_at'] <= hf) & (datos['categoria']== categoria) resultado = datos.loc[filtrar] resultado # Crear un Gráfico Básico (Plot) con los datos Filtrados import matplotlib.pyplot as plot plot.rcParams["figure.figsize"] = 20,11 # ancho: 20 , alto: 11 resultado.plot(x="producto", y="created_at")
Eso es todo en este Post, hemos realizado el análisis de todas las ventas realizadas durante la tarde (12PM – 6PM), pertenecientes a la categoría bebida.
Ten Paciencia, lo que quiero es que entiendas todo el proceso de como funciona la Ciencia de Datos (Data Science) en una caso similar a la realidad.
Nota (s)
- En el siguiente capitulo terminare con el análisis de los Demás Datos pendientes.
- Más adelante usaré herramientas de Visualización de Datos más especializadas en el área.
- No olvides que debemos usar la Tecnología para hacer cosas Buenas por el Mundo.
Síguenos en nuestras Redes Sociales para que no te pierdas nuestros próximos contenidos.
Social
Redes Sociales (Developers)
Redes Sociales (Digital)