En este artículo veremos la manera de integrar R con BigQuery (herramienta que vimos en la primera parte de esta serie de artículos cuyo objetivo es mostrar parte de la potencia del uso de las 3 herramientas en conjunto). Estoy seguro que ya debes conocer R (caso contrario puedes descargar este PDF para revisar una introducción a R), así que solo se harán un par de comentarios sobre R y luego a trabajar con los datos.

 

¿Por qué usar R?

 
R es una herramienta de uso general,  que permite realizar análisis estadístico e -gracias a módulos contribuidos por la gran comunidad de científicos y entusiastas en la ciencia de datos- incluso manejo de algoritmos de minería de datos (Data mining).

Sostengo esta afirmación basado en lo siguiente:

  • R tiene una comunidad muy importante de expertos, estadísticos, académicos y profesionales que comparten nuevos modelos, nuevas prácticas y van actualizando constantemente los algoritmos.
  • Corre en los sistemas operativos más importantes: Linux, OSX y Windows
  • Puede instalarse y correr sin grandes requerimientos de hardware (Obviamente si no vas a trabajar con millones de datos). En tal sentido, el hardware deberá ser superior al de una laptop de escritorio cualquiera.

Si deseas descargar R puedes hacerlo desde aquí. Elige el instalador según Sistema Operativo.

 

Preparando la data

 
Para poder correr un modelo de minería de datos, antes es básico preparar la data, de hecho es una de las tareas más importantes por hacer. Bajo ello, entonces los pasos serían:

  1. Planificar el trabajo a realizar: estructura de datos a partir de algoritmos a ejecutar.
  2. Extraer datos (Desde BigQuery de Google a R)
  3. Transformar los datos
  4. Crear un modelo (Léase: divertirse con los datos)

Ojo, para el ejemplo de este artículo, previamente se ha etiquetado (taggeado) un Sitio Web con E-commerce avanzado de Google analytics, por lo cual tenemos  datos de productos, de intentos de compra, compras, etc. 

Vamos a explorar los pasos entonces:

 

Paso 1: Planificar trabajo a realizar: estructura de datos a partir de algoritmos a ejecutar

 

Vamos a hacer un análisis de canasta de compras (Market Basquet Analysis).  Que es básicamente ver si existen productos que se compran en conjunto.

Para esto es necesario, recoger de la data 2 valores: una clave (ID de transacción)  y los productos que conforman la transacción.

Entonces, entramos en R

Bigquery, R y Tableau Planificar trabajo a realizar estructura de datos a partir de algoritmos a ejecutar

 

Paso 2: Extraer datos (BigQuery + R)

 

Para ello debemos instalar el paquete BigRQuery ingresando a R o R-Studio y ejecutando la siguiente línea:

install.packages(“bigrquery”)

Bigquery, R y Tableau paso 2 extraer datos

Ojo, son varias las librerías que se agregan

Bigquery, R y Tableau paso 2 extraer datos 2

Luego debemos cargar la librería library(bigrquery) ejecutando la siguiente línea:

Bigquery, R y Tableau paso 2 librería library bigrquery

Con lo cual, ahora tenemos la capacidad de poder leer datos desde BigQuery de Google Analytics.

En R tendrías que ejecutar el siguiente código:

Bigquery, R y Tableau Leer datos desde Bigquery de Google Analytics

Lo que hace el código es seleccionar los IDs de cada visitante, con los productos que revisó en una visita web con las siguientes condiciones:

  • Productos vistos en determinado rango de fechas.
  • Dispositivo no es mobile.

¿Por qué hacerlo con bigrquery?

Porque de otra manera tendrías que hacer el reporte manualmente y guardarlo en algún lugar accesible para R.

 

Paso 3: Transformar datos

 

SQLDF es un paquete que permite manejar los datos a través de comandos SQL en R.  Sino lo tienes instalado debes ejecutar la siguiente línea de código:

Bigquery, R y Tableau paso 3 transformar datos

Para cargar la librería ejecutamos la siguiente línea:

Bigquery, R y Tableau paso 3 descargar la librería

 

Paso 4: Crear un modelo: Reglas de asociación

 

Esta es la razón por la cual en WalMart   pusieron alguna vez la cerveza junto a los pañales J.  Creció entre 10% y 15% las ventas de ambos productos cunado se pusieron juntos.

Este query resuelve la consulta: ¿Cuáles de mis productos se compran juntos? En el caso de un ecommerce puede ser: ¿Cuáles de mis productos se ven en conjunto?

Bigquery, R y Tableau paso 4 reglas de asociación

Como resultado verás algo así en la consola de R:

Bigquery, R y Tableau paso 4 consola de r

Por ahora, te puedo indicar que te puedes quedar con aquellas piezas que tengan las columnas (support, confidence y lift)  con mayor valor.

Una breve explicación de estos parámetros:

  • El porcentaje de las veces que se vieron  los productos de la izquierda (lhs) en conjunto sobre el total de las combinaciones
  • El porcentaje de las veces que se vio el producto de la  derecha (rhs) en conjunto  sobre el total de combinaciones de la izquierda (lhs)
  • Un valor que va alrededor del 1 que nos indica que tan fiable es la combinación. Si es mayor que 1 entonces quiere decir que los datos forman un conjunto más de lo normal.

Para tener un proceso efectivo de minería de datos, es necesario asignar más tiempo para analizar los resultados de la data que tiempo para los procesos manuales o semi-manuales como los de extracción, importación y exportación y preparación de la data.

Como has podido observar, en 9 líneas de código, 4 de y 5 de ejecución, tienes la data lista para empezar a analizar. Mira el código completo:

Bigquery, R y Tableau paso 4 librerías a usar