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
1 2 3 4 |
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
1 2 3 4 5 6 7 8 9 |
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.
1 2 3 |
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.
1 2 3 4 5 |
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.
1 2 3 |
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.
1 2 3 |
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
1 2 3 4 |
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.
1 2 3 4 |
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
1 2 3 |
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
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
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.
- Data Science (Ciencia de Datos)
- 09-04-2020
- 13-08-2021
- Crear un Post - Eventos Devs - Foro
Social
Redes Sociales (Developers)
Redes Sociales (Digital)