Analytics Premium ComScore ClickTale Analytics Certified Partner Klipfolio Coremetrics

Como empezar a usar R statistics

15/06/2016 a las 10:51

Muchos ya habréis notado, por anteriores posts, que nosotros estamos acostumbrados a usar R. Pero ello no hace que nos olvidemos de nuestros inicios y de la notable curva de aprendizaje que conlleva empezar a usar R de cero.

Pero si os encontráis en vuestros inicios con R no os preocupéis, la comunidad de usuarios/desarrolladores de packages de R ha pensado una buena ayuda para empezar a usar R haciendo más amena la primera toma de contacto con la herramienta, y nosotros estamos aquí para contároslo.

La solución que os queremos presentar hoy es el package/tutorial Swirl. Se trata de un package del mismo R que consta de un tutorial interactivo de dicha herramienta.

Para acceder al tutorial debemos:

  1. Tener R instalado y abrirlo.
  2. Instalar y cargar el package “Swilr” usando los siguientes comandos:
                          install.packages(“swirl”)
                          library(swirl)
  3. Llamar la función correspondiente para iniciar el tutorial:
                           swirl()

Llegados a este punto, ya habremos empezado.

img R swirl 1

A partir de aquí, las diferentes explicaciones y actividades nos irán apareciendo en la consola de R mediante texto en inglés. En cada bloque explicativo o ejercicio se esperará nuestra interacción mediante la respuesta de dicho ejercicio propuesto, pulsando “enter” para saltar a la siguiente explicación o utilizando comandos específicos para guardar la progresión o abandonar el tutorial, por ejemplo.

El programa consta de los siguientes puntos:

img R swirl 2

Se pueden seguir los diferentes steps uno a uno en orden, realizar solo aquel que nos interese, ir haciendo poco a poco guardando el progreso y recuperándolo en otro momento… vamos, toda la flexibilidad que tanto nos gusta que tengan este tipo de tutoriales.

Además, cada uno de estos bloques consta de diferentes apartados. Por ejemplo, este es el contenido correspondiente al bloque de análisis exploratorio de datos (bloque 4):

img R swirl 3

Como podéis ver se trata de un completo tutorial interactivo que os animamos a probar y a compartir vuestra experiencia con todos en los comentarios.

Good luck and Statistics 😉

Dashboard de Google Analytics en Gdrive

09/12/2015 a las 15:32

En este blog ya hemos hablado otras veces sobre dashboarding y herramientas especializadas como Klipfolio, hablando de las ventajas de la herramienta o de usos específicos de la misma, por ejemplo. Una de las pocas desventajas de este tipo de herramientas es que no son de uso gratuito. En la mayoría de casos su coste queda justificado por las numerosas ventajas y virtudes de la herramienta (por ejemplo las de Klipfolio ya las comentamos en su día y no me voy a repetir en exceso, las podéis encontrar aquí), pero no en todos los casos estamos dispuestos a pagar una mensualidad por tener un dashboard, por pequeña que esta sea.

Si os encontráis en una situación de este estilo, una muy buena solución para no renunciar a tener un dashboard automático es Google Drive; más concretamente Google SpreadSheets. Tal como la mayoría de vosotros ya sabéis, Google SpreadSheets es un servicio web de hojas de cálculo dentro de la plataforma de Google para usuarios registrados, con el que podemos realizar la mayoría de acciones que se pueden hacer en aplicaciones de hojas de cálculos de los programas ofimáticos (por ejemplo en Excel); como aplicar funciones matemáticas a datos ubicados en distintas celdas, ordenar y combinar datos, entre otras.

Así pues, si tenéis una cuenta de Google (gmail, analytics, etc.) tenéis acceso a la creación y uso de hojas de cálculo mediante SpreadSheets de Gdrive, que a su vez nos permite la importación de datos de Google Analytics a las mismas de una forma muy cómoda y sencilla, de configuración intuitiva y fácilmente automatizable. ¡Veamos cómo hacerlo! 🙂

Para tener acceso a nuestros datos de Google Analytics en SpreadSheets debemos realizar unas consultas (queries). Pero que la palabra “query” no os asuste, en este caso no nos liaremos con código ni mucho menos, tenemos una herramienta que nos ayuda a realizar dichas queries mediante simples selectores. Para ello debemos crear un nuevo documento de Google SpreadSheets e instalar un Add-ons. Los Adds-ons son como plugins o extensiones que añadimos a Google SpreadSheets que ponen a nuestra disposición nuevas funciones y/o acciones dentro de la herramienta.

dashboard1

En concreto optaremos por instalar el Add-on original de GA dado que funciona a la perfección para lo que queremos, es cómodo de usar y además de esta forma nos ahorramos compartir los datos con algún tercero (o cuarto); lo cual siempre es una buena idea 😉

dashboard2

Una vez instalado, cuando vayamos al menú de Ads-ons nos aparecerá la pestaña “Google Analytics” y dentro de ella 3 opciones además de la pertinente ayuda. La primera de las 3 opciones que debemos usar es la de “Create new report”, la cual nos va a permitir configurar en gran medida nuestras queries.

dashboard3

Al acceder a “Create new report” se nos abrirá una interface a la derecha de nuestra pantalla, donde podremos seleccionar cuenta, propiedad y vista;  así como métricas y dimensiones para nuestras queries.

dashboard4

Una vez seleccionada toda esta información, clicamos en el botón “Create Report” (en azul). Esto generará una nueva pestaña en el documento de Google SpreadSheets parecida a lo que podéis ver en la siguiente imagen:

dashboard5

En este ejemplo hemos seleccionado como dimensiones la fecha y como métricas los usuarios, las sesiones, el rebote y las transacciones.

En este punto tenemos la query casi lista (pero no del todo), solo nos queda añadir los filtros y/o segmentos que queramos (para hacerlo os podéis ayudar de la herramienta query explorer) y seleccionar el periodo de tiempo que queramos de una forma dinámica.

Por defecto, las queries aparecen elaboradas sobre los últimos 7 días (Last N Days = 7) pero esto lo podemos modificar directamente en las celdas del documento seleccionando los últimos N días (siendo N el número que queramos) o dejando esa casilla en blanco y utilizando las de Start Date y End Date. Esta última opción será la más habitual, ya que normalmente nos interesa realizar dashboards sobre periodos de tiempo dinámicos; como, por ejemplo, la última semana cerrada o el último mes cerrado.

 

En este punto es donde debemos usar las funciones de DS que nos permiten seleccionar períodos de tiempo dinámicos. Por ejemplo, si quisiera seleccionar los datos de la última semana cerrada una opción sería esta (como acostumbra a suceder no se trata de una solución única, puede haber distintas formas de llegar al mismo resultado):

 

Start Date = TODAY()-WEEKDAY(TODAY(),3)-7

End Date  = TODAY()-WEEKDAY(TODAY(),3)-1

 

Por poner otro ejemplo, si estuviéramos haciendo un dashboard mensual y quisiéramos obtener el último mes cerrado, esta podría ser una opción:

 

Start Date =  DATE(YEAR(EOMONTH(TODAY(),-1)),MONTH(EOMONTH(TODAY(),-1)),1)

End Date  = EOMONTH(TODAY(),-1)

 

Lo importante es garantizar que dichas selecciones serán dinámicas y que de forma automática harán que la query obtenga los datos para el periodo deseado.

 

Una vez tengamos lista la query, ya solo queda proceder con el Run de la misma. Para ello iremos al menú de Add-ons/Google Analytics y clicaremos sobre “Run Reports”; lanzando así un primer Run manual para comprobar que todo funciona correctamente y que los datos obtenidos son los deseados.

dashboard6

El resultado del run será una pestaña para cada query (columna) donde encontraremos los datos de la siguiente manera:

dashboard7

Una vez terminadas las comprobaciones, nos dirigiremos al mismo menú Add-ons/Google Analytics pero esta vez accedemos a “Schedule reports”; donde podremos programar nuestras actualizaciones automáticas muy fácilmente con tan solo dos clics.

dashboard8

Llegados a este punto ya hemos conseguido tener los datos de Google Analytics para nuestro dashboard en GS con actualizaciones automáticas. Ahora quedará por hacer todo el trabajo de cálculo de métricas calculadas (en caso de querer utilizarlas), diseño del dashboard, presentación del mismo y demás. Esto de momento os lo dejamos a vosotros, tal vez otro día abordemos estos aspectos juntos en otro post. Hasta ese momento podéis disfrutar de la genialidad de poder tener datos de actualización automática en una herramienta gratuita y accesible para todos de una forma tan simple como esta ^.^

Dashboarding: Selector de fechas “cocinado” en Klipfolio

13/10/2015 a las 08:44

En anteriores posts he hablado de herramientas de visualización y dashboarding, sobretodo de Klipfolio que es una de las que más utilizo para estos temas. Sin embargo, en DoctorMetrics, jamás habíamos abordado la creación de un Klip algo alejado de lo básico para ver entre todos de qué forma trabajar con las funciones de este tipo de herramientas procurando sacarles el máximo provecho.

Hoy vamos a ver cómo construir en Klipfolio un klip en el que englobaremos un selector del periodo de tiempo (dos selectores de fechas) y un dato que varía según el periodo seleccionado.

post 1

 

Para ello lo primero que debemos hacer es crear un Klip y añadirle un Layout Grid que nos permitirá incluir en dicho klip distintos tipos de “sub-klips”. Este Layout Grid lo definiremos haciendo que tenga dos columnas y tres filas dado el diseño que hemos decidido para nuestro resultado final presentado anteriormente.

post 2

 

Una vez tenemos la base de nuestro klip diseñada,  lo primero que debemos hacer es crear los dos selectores de fecha que usaremos para que el usuario indique el periodo seleccionado mediante su fecha de inicio y fecha de fin. Para ello debemos proceder de la siguiente forma:

  1. Nos dirigiremos al apartado “Klip Title” dentro del componente “Klip” que encontraremos en el árbol de componentes. Allí le daremos un nombre al conjunto de todo el Klip que vamos a realizar. En el ejemplo lo hemos nombrado “Eventos con Selector de Fehcas”.
    post 3
  2. Una vez “bautizado” el klip, nos dirigirnos al mismo menú de componentes situado en el lateral de nuestra pantalla, a la derecha del klip (donde encontramos el “Layout Grid” antes). Esta vez, sin embargo, seleccionaremos el componente “User Input Control” para arrastrarlo hacía la celda superior izquierda del layout construido.
    post 4
  3. Seleccionamos el componente “Drop-Down List” en el árbol de componentes y en el apartado de propiedades le damos un nombre al selector de fechas en “Control Label”. En nuestro ejemplo le daremos el nombre “start”.
  4. Dentro del mismo apartado de propiedades, en “Control Type” seleccionaremos el tipo de selector “Date Picker”, ya que es el que nos conviene en este caso.
  5. Allí mismo, en “Display Format” podemos seleccionar un formato de fecha para nuestro selector y en “Output Format” podemos hacer lo propio para el formato del resultado. Podríamos hacer que fueran formatos distintos si nos conviniera pero en nuestro caso, para no liar demasiado, vamos a poner ambos formatos iguales seleccionando el formato de fecha europeo habitual (dd/MM/yyyy).
  6. Donde se especifica la variable de uso (“Use Variable”) vamos a clicar en “New Variable” y vamos a definir una nueva variable que será la encargada de almacenar la fecha de inicio que seleccione el usuario. En nuestro caso vamos a nombrar a esta variable “start”.
    post 5

Llegados a este punto ya tenemos nuestro primer selector de fecha creado. Para conseguir el segundo simplemente debemos repetir los pasos del 2 al 6 cambiando los nombres que le damos tanto al selector como a la variable. En nuestro caso, haremos lo mismo poniendo “end” en lugar de “start”.

Una vez creados los dos selectores de fecha nuestro Klip tendrá este aspecto:

post 6

 

Tenemos dos selectores de fechas maravillosos pero ningún dato que se modifique dadas estas fechas, algo que seguramente echaríamos en falta 😉

Para terminar nuestro klip debemos proceder a calcular el dato deseado para el periodo de tiempo concreto comprendido entre la  fecha de inicio (start) y la fecha de fin (end).

Lo primero que debemos hacer es realizar la sencilla query que nos garantice una tabla resultante parecida a la siguiente (solo se presenta una parte):

post 7

 

Nota: Nótese que el periodo para el que funciona el klip viene limitado por el periodo de datos que se está seleccionando en nuestra query, obviamente.

 

Teniendo ya el Data Source a punto, podemos obtener el dato deseado (en nuestro ejemplo el total de eventos) mediante la siguiente composición de funciones de Klipfolio:

post 8

Poniendo este conjunto de funciones en un componente tipo “Label” abajo del todo de nuestro klip junto a otro (encima de este) que contenga el texto “Total de Eventos” ya tenemos el klip listo.

Ahora bien, para poder entender mejor esta composición de funciones que hemos realizado (la clave del klip junto con los selectores de fecha), vamos a desglosarla de dentro hacía fuera para que todos podamos entender qué hace cada función y porqué todas son importantes para conseguir el dato deseado:

  1. Usamos la función “DATERANGE” para seleccionar las fechas comprendidas en el intervalo de tiempo [start , end]:
    post 9
  2. Con la función “DATE_CONVERT” cambiamos el formato de las fechas partiendo del original de las variables recogidas en los selectores (dd/MM/yyyy) y obteniendo como resultado el formato de fecha con el que trabaja GA y por tanto el que tendrán los datos del Data Source utilizado (yyyyMMdd):
    post 10
  3. Si al paso anterior lo denominamos “fechas formato cambiado”, para que resulte más fácil visualizar la función, ahora usaremos un “LOOKUP” que lo que hará es buscar las fechas de nuestro intervalo (seleccionadas en el punto 2) en la columna A de nuestro Data Source y se quedará con el valor que les corresponda de la columna B a cada una de las fechas seleccionadas.
    post 11
  4. Como resultado, después de haber realizado el paso 3, tenemos el total de eventos para cada uno de los días que conforman el periodo seleccionado. Así que ahora solo falta sumarlos mediante la función “SUM” para concluir teniendo la suma del total de eventos en el periodo seleccionado:
    post 12

Como habéis podido observar, en este tipo de herramientas basadas en funciones no siempre hay una función específica para aquello que quieres hacer; pero siempre (o al menos esta es la idea) puedes obtener aquello que necesitas mediante el uso conjunto de varias funciones diferentes usadas de la forma adecuada. A esto yo le llamo “jugar” o “cocinar” un poco con las herramientas disponibles en cada momento, y para mí esto tiene un punto de diversión particular.

 

Espero que os haya resultado útil haber tratado este caso juntos, ya sea para saber cómo hacer este caso específico o para captar la idea de cómo“cocinar” de forma adecuada con las funciones (y si es ambas cosas a la vez, pues mejor que mejor).


Ya está aquí el Custom Funnel

01/10/2015 a las 16:36

 

Durante este verano ha aparecido en el menú de creación de los informes personalizados una nueva opción: Funnel.

custom funnel

La salida de esta nueva funcionalidad (actualmente en beta) es una gran y muy esperada noticia para todos. De hecho me atrevo a afirmar que se trata de una de las nuevas funcionalidades más esperadas de los últimos tiempos, como mínimo para mí personalmente lo es. No solo porque siempre nos gusta lo nuevo, siempre está muy bien que nos den más opciones y más si se trata de una opción que nos permite crear informes bonitos como es el caso; sino porque además, en esta ocasión, se trata de una opción que satisface varias necesidades históricas de los analistas y de la mayoría de usuarios de Google Analytics en general.

 

Características y Creación

Antes de ir “al turrón” y crear un Custom Funnel, creo que merece la pena comentar con calma porqué este nuevo informe satisface tantas necesidades que teníamos hasta el momento:

  • Este nuevo tipo de informe personalizado nos da la opción de crear un Funnel RETROSPECTIVO. Sí, lo habéis leído bien, con este informe por fin podemos crear un Funnel hoy y analizar su comportamiento histórico, realizar comparativas con nuestros datos de periodos anteriores y demás. Así que se acabó lo de tener que hacer los “montajes” que hacíamos todos antaño para poder usar nuestro histórico en Funnels creados recientemente.
  • Podemos construir Funnels no solo a partir de páginas sino también basándonos en eventos, diferentes niveles del Content Grouping y de hecho todas las dimensiones de Google Analytics (como mínimo esto dice la documentación oficial, yo no las he buscado todas una a una no nos vamos a engañar).
  • Podemos aplicar segmentos sobre un Funnel. En los antiguos informes de Funnel jamás pudimos aplicar segmentos para analizar si los porcentajes de paso eran distintos para distintos conjuntos de sesiones y/o usuarios, ahora ya podemos trabajar con segmentos en cualquier Funnel como lo hacemos con el Funnel del Enhanced Ecommerce.
  • Se puede configurar el Funnel para que tenga en cuenta “acciones” realizadas en distintas sesiones u obligando a que se hayan realizado en la misma sesión (la segunda opción es básicamente como siempre ha sido en el Funnel clásico). Esta necesidad puede parecer menor en comparación con las anteriores pero desde mi punto de vista no lo es para nada. Debemos recordar que si tenemos un proceso que suceda parte en la web y parte en establecimientos offline, Google Analytics nos da la opción de medir todo el proceso mediante el protocolo de medición. El problema que nos encontramos siempre que trabajamos así es que los informes estándar nos cortan el proceso de compra por ser que se efectúan en “sesiones” distintas. Esto queda solucionado con los Custom Funnels siempre y cuando puedas pasar un Uid común entre el online y el offline.

Ahora que ya tenemos claro que queremos los Custom Funnels y los queremos YA (me he enrollado un poco, como ya es normal en mí, pero creo que era clave comentar estas ventajas tan “suculentas”) dejar claro que se trata de una funcionalidad para cuentas Premium y que actualmente está en beta.

Dicho todo esto, veamos qué debemos hacer para realizar nuestro Custom Funnel. Es muy sencillo:

  1. Acceder a los informes personalizados.
  2. En el selector de tipo de report elegir la opción Funnel
  3. Hecho esto nos aparecerá el siguiente menú:
    custom funnel 2
    Dejaremos las opciones (Analysis Type) por defecto y más adelante las comentaremos con calma 😉
  4. Como podéis ver en la imagen anterior, la parte principal de la configuración de este informe es toda la sección de reglas (Funnel Rules). Aquí es donde debemos fijar la dimensión y la condición o regla que se debe cumplir respecto a dicha dimensión para que se considere que ese paso del Funnel (stage) se ha alcanzado. Podemos crear hasta 5 pasos distintos cada uno de ellos con hasta un máximo de 5 reglas o condiciones.

¡Y ya está! Luego nos queda configurar detalles pero ya tenemos el grueso del informe listo para nuestro análisis.

 

Opciones

El informe de Custom Funnel presenta las siguientes opciones:

custom funnel 3

  • Tenemos la posibilidad de elegir si las reglas de los distintos pasos del Funnel se pueden haber realizado en sesiones distintas o deben haber ocurrido en la misma sesión. Ya os he comentado porqué valoro tanto esta opción hasta el punto de parecerme la más relevante de las que tiene este informe.
  • En esta opción podemos elegir si queremos construir un Funnel cerrado o abierto. La diferencia entre ambos es que en el primero nunca será considerada una sesión en un determinado paso si no ha cumplido también todos los pasos anteriores, mientras que en el abierto sí se considerarán sesiones que cumplan la condición del paso en cuestión se hayan cumplido o no las condiciones de los pasos anteriores.
  • Podemos elegir la métrica con la que queremos operar en el Funnel entre Usuarios y Sesiones.
  • También podemos seleccionar entre distintas opciones respecto a la inmediatez con la que un paso debe ir seguido del próximo. En este caso podemos elegir que en todos los casos no importe si ha habido más acciones entre paso y paso (opción por defecto), que en todos los casos tenga que ir un paso inmediatamente seguido del siguiente o seleccionar en cada caso uno por uno según convenga.

Evidentemente este conjunto de opciones le da flexibilidad al informe, cosa que es de agradecer y más teniendo en cuenta que a veces a Google se le olvidan estas cosillas.

 

Informe resultante

Ahora que ya hemos visto como se hace y las diferentes opciones solo queda ver el resultado final. Aquí lo tenéis:

custom funnel 4

Sigue la misma línea que el Funnel del Enhanced Ecommerce, diseño que creo que está muy bien pensado, claro y agradable a la vez que fácilmente interpretable. Es destacable que teniendo un Funnel recién construido podamos analizar datos del pasado con esta visualización que, por ser que estamos acostumbrados a verla en el Ecommerce mejorado, no debemos dejar de valorar. Además esto tiene una ventaja clara y es que la mayoría ya vamos a saber leerlo e interpretarlo de entrada porque estamos acostumbrados a este tipo de reports.

Podríamos decir que por estar ya acostumbrados, el informe resultante puede parecer que carezca de espectacularidad; pero no es así y debemos recordar que la grandeza de esta nueva herramienta no está en la visualización sino en todo lo que hay detrás de ella.

Mis comentarios

A lo largo de todo el post ha ido quedando claro que creo que este informe llega como agua de mayo para la mayoría, ya que satisface necesidades que llevamos mucho tiempo arrastrando y que no son menores. Como ya he dicho, creo que se trata de una de las funcionalidades más importantes que ha añadido la herramienta en los últimos tiempos y que es bastante completa, con las opciones necesarias y sin ser excesivamente complicada en cuanto a configuración.

Ahora bien, no puedo cerrar este post sin sincerarme con todos vosotros y confesaros que echo en falta poder realizar las condiciones de cada paso del Funnel también sobre métricas (pe: tiempo en site > 2min, entre muchos otros que tengo en mente). Creo que sería un detalle que pondría la guinda sobre este suculento pastel que es y será para todos el Custom Funnel. Por supuesto ahora nos toca ponerla a prueba, ser críticos con ella e ir testeándola viendo si los datos resultantes nos cuadran con los datos que tenemos en los demás informes y si todo funciona como es debido 🙂

 

Una conexión de titanes: Google Analytics y R Statistics

13/03/2015 a las 13:43

En este post vamos a ver cómo hacer la conexión entre dos de las herramientas más potentes que conozco: Google Analytics y R statistics. Pero antes de esto, voy a explicar brevemente qué es R statistics para aquellos que no lo conozcáis (Google Analytics creo que no necesita presentación en este blog).titanes

R Statistics es un entorno de software libre enfocado a la computación estadística y a la creación de gráficos estadísticos. Funciona por librerías y los usuarios pueden crear sus propias librerías para subirlas y que sean descargadas y utilizadas por otros usuarios después de la correspondiente revisión y validación de las mismas. Dicho de otra manera, se trata de un software estadístico libre muy potente que está en constante crecimiento ya que la comunidad va creando funciones, gráficos y demás. Al poseer una comunidad muy activa e inteligente, este método de funcionamiento hace que sea una herramienta inmensa y perfecta para trabajar con Big Data y hacer Data Mining. Para todos los que usamos R statistics desde hace tiempo, esta es la herramienta que nunca puede faltar en nuestros ordenadores, cosa que no resulta nada difícil ya que funciona en múltiples plataformas y es de acceso totalmente libre.

Hechas las presentaciones pertinentes, muchos de vosotros ya estaréis viendo el montón de posibilidades que se nos presentan si conseguimos una conexión cómoda y fluida entre R y Google Analytics. Evidentemente podríamos vivir sin dicha conexión, ya que siempre tenemos la opción de descargar los datos de un informe o del Query Explorer en formato “csv” y luego cargarlos en R. Pero ¿para qué perder tanto tiempo en todo este trajín de datos si podemos lanzar queries directamente a Google Analytics desde R? Veamos cómo hacerlo:

1) Lo primero que debemos hacer es acceder a nuestra Developer Console de Google y crear un proyecto. Esto es lo que nos dará las credenciales para crear el Token que nos permitirá conectar R con Google Analytics.

2) Una vez creado el proyecto, ya tenemos acceso a un Client ID y su Client Secret que son los valores que necesitamos para crear el Token desde R. Estos dos valores se obtienen en el apartado “Credentials” dentro de “APIS & auth” como podéis ver en la siguiente imagen.

Developers Console

3) Ahora que ya tenemos los valores necesarios, podemos hacer la llamada desde R. Como veréis en el siguiente código, antes de la conexión en sí debemos cargar las dos librerías necesarias para dicha conexión.

RGoogleAnalytics 1

4) Una vez lograda la conexión entre Google Analytics y Rstatistics ya podemos empezar la fiesta de las queries para extraer los datos que queramos. En este punto lo primero que debemos hacer es construir la query mediante las funciones “Init” y “QueryBuilder”, para después ejecutarla mediante la función “GetReportData”. A continuación os dejo un pequeño ejemplo para que veáis cual es la forma de utilizar estas funciones.

RGoogleAnalytics 2

Las limitaciones a las que estamos expuestos al realizar queries son  un máximo de 7 dimensiones y 10 métricas por query. Son unas limitaciones que pueden ser molestas en algún determinado momento, pero nada grave que no se pueda esquivar mediante algo de “magia” del Data Miner 😉

Después de la mala noticia comentaros que mediante el parámetro “paginate_query” de la función “GetReportData” podemos hacer que la propia función nos haga inmunes al límite de las 10.000 observaciones (filas) de Google Analytics; ya que hace que la función vaya haciendo llamadas de 10.000 filas en 10.000 filas y posteriormente haga el merge para que nosotros ya recibamos todos los datos en una única tabla lista para el análisis.

5) Y… ya está. Una vez llegados a este punto ya hemos conseguido tener nuestros datos en un data.frame de R listo para ser explotado y aprovechado al máximo por un buen estadístico/data scientist.

 

Espero que esta guía paso a paso sobre como conectar Google Analytics con R Statistics os sirva de mucha ayuda, que los que hayáis conocido R mediante este post os animéis a explorar esta herramienta tan potente e interesante y que vuestros análisis sean muy fructíferos (y que me lo contéis en los comentarios si os apetece, por supuesto).Ü

¿Por qué debo creerme una métrica calculada a partir de una muestra si cambiando la muestra cambiaría el valor?

25/09/2014 a las 15:10

Esta es una pregunta que, como estadística, me han hecho incontables veces y muchas de ellas en el entorno del samplig (injustamente tratado de forma habitual como el demonio) de Google Analytics.

Dado este fenómeno reiterado he creído que era un buen tema a tratar en un post.

muestreo

La respuesta constituye la esencia de la teoría del muestreo estadístico y para responderla vamos a focalizarnos en el tiempo medio en el site. La clave reside en las buenas propiedades de los estimadores utilizados habitualmente, entre ellos por supuesto la media, que son las siguientes:

1. El valor medio de la media muestral coincide con la media poblacional.

Es evidente que la media varía de una muestra a otra (si de un total de 1000 visitas cojo una muestra de 100 el tiempo medio será uno, si cojo otra muestra de 100 el tiempo medio será distinto seguro). Sin embargo, si repitiéramos este proceso de substraer muestras (cosa que no hacemos en la práctica), todos estos valores distintos de la media muestral estarían agrupados (con mayor o menor dispersión) entorno a la media poblacional. Cuando un estimador tiene esta propiedad se dice que es un estimador insesgado.

Esto nos deja algo más tranquilos pero no del todo ya que, como hemos apuntado antes y seguro que está retumbando en vuestra mente, nosotros solo tenemos una de esas estimaciones y por tanto desconocemos si está cerca o lejos de la media poblacional también desconocida que queremos estimar.

Para quedarnos más tranquilos sobre este aspecto tenemos la segunda propiedad.

2. La variabilidad del estimador (media muestral) disminuye al aumentar el tamaño de muestra.

Los datos en sí tienen una variabilidad que a menudo olvidamos pero que siempre está allí y conviene tener presente como comentamos en anteriores posts. Conocer dicha variabilidad ya presente en los datos poblacionales (todas las visitas de mi site no están el mismo tiempo en él) nos permite calcular el tamaño necesario de muestra para que, por ejemplo, el 99.7% de las medias muestrales estén a una distancia de menos de dos unidades de la media poblacional.

De esta forma, mediante cálculos estadísticos, se puede determinar cuál es el tamaño de muestra necesario para garantizar esta precisión en nuestra estimación (para vuestra tranquilidad diré que el tamaño de muestra no crece proporcionalmente al tamaño de la población, tema que trataremos en otro post si queréis). Este es un trabajo que, en el caso del sampling en los reports de Google Analytics, desempeña Google sin dar demasiadas explicaciones al respecto. Se trata una vez más de un acto de fe por nuestra parte (no mayor a los que hacemos habitualmente) que consiste en creer que el equipo de Google tiene conocimientos básicos de muestreo estadístico. Preguntarse por qué no dan detalles sobre ello es natural en el caso de personas curiosas y os aseguro que a mí me ha pasado reiteradas veces, pero reflexionando en frío debemos pensar que tampoco nos dan detalle de muchos otros aspectos técnicos ni creo que puedan hacerlo dado que estarían haciendo público su producto. En el caso del muestreo resulta tan claro y evidente cómo se debe hacer que es impensable que Google no lo gestione de la forma adecuada.

Así que, a pesar de conocer una única estimación del valor que queremos conocer, sabemos que “casi” en todos los casos va a estar muy cerca del valor poblacional. Cuando haces una estimación de este tipo no puedes asegurar que tu estimación no sea una de esas tres de cada mil que caen más lejos de la media poblacional, pero este es un riesgo que debemos estar dispuestos a asumir SIEMPRE que trabajemos con estimaciones estadísticas (encuestas, tests de calidad en procesos industriales, estudios de mercado, etc.). Trabajando con el umbral del 99.7% tenemos que pensar que, el hecho de que nuestra media quede a una distancia superior a la de dos puntos es como si compráramos 997 boletos en una rifa con 1.000 boletos a la venta y no nos toca el premio (hay que ser muy gafe para que esto pase).

Resumiendo: que siempre que queremos hacer cálculos en base a una muestra corremos el riesgo de equivocarnos, pero este riesgo se puede controlar 🙂

Universal Analytics deja de ser Beta!!

02/04/2014 a las 19:19

universalGoogle ha anunciado hoy mismo que Universal Analytics (UA) abandona su estado de Beta para convertirse en la nueva forma de medición web. Esta noticia no hace más que aproximar el día en el que habremos olvidado del todo los visitantes para dedicarnos de llenos a NUESTROS USUARIOS usando la multitud de prestaciones que nos ofrece y nos ofrecerá UA como por ejemplo:

  • Cobertura marco de Google Analytics premium SLAs: Google Analytics SLA Premium ahora cubrirá el procesamiento de datos Universal Analytics y la colección de hits analytics.js. Ya está disponible un contrato actualizado que incluye SLA covering Mobile SDKs (v2+) y la plataforma de protocolo de medición. Así que si tenemos Premium lo ideal es ponerse en contacto con nuestro agente de la herramienta para más información.
  • Característica paridad con clásicos Analytics: Universal Analytics tendrá 100% paridad de funciones con la GA Classic, lo que incluye herramientas tan indispensables como:
    • Remarketing y datos demográficos en los informes
    • Sopoete para el procesamiento de los dc.js hits en UA y para la habilitación de funciones de visualización de publicidad en analytics.js
    • Procesamiento Intraday de los datos de Remarketing, demografía de la audiencia y los datos de AdSense
  • Informes User ID/ Cross- Device: Con UA llega el despliegue de la función de característica de User ID de Universal, la cual hace posible el establecimiento de un identificador para rastrear los datos de usuario en Google Analytics.
  • ID de usuario: que nos permitirá tener contadores de usuarios (visitantes) más precisos, analizar UX, acceso a la visualización especial por User ID, nuevos reports Cross Device, buscar y evaluar las relaciones entre los dispositivos y la actividad de engagement a través de múltiples sesiones.

universal-analytics1

 

Esta lista no es más que una recopilación de aquellos cambios que llegan con UA que me han parecido más interesantes y con ellos ya se atisba una multitud de nuevas posibilidades para enriquecer los análisis de nuestro site, conocer mejor y de una forma más amplia a nuestros usuarios y nuestro site, permitiendo así una mayor posibilidad de obtener potentes y más precisos insights.

Puede parecer que me estoy dejando llevar por la emoción, y a pesar de que se trata de una emoción con fundamentos, no puedo desmentirlo. El hecho de poder tener información acerca de la UX de los usuarios logueados (tema que me apasiona personalmente y que tiene que importar a cualquiera que tenga una web) o poder buscar y evaluar relaciones entre dispositivos (entre otras) manteniendo la paridad con el Googla Analytics Classic al que todos estamos acostumbrados me parece que es motivo de emoción.

Universal Analytics se convierte en el estándar a partir de ahora, siendo la única opción para la creación de nuevas propiedades en GA y teniendo muy presente que los cambios de interfaz se harán efectivos de forma progresiva en todas las cuentas durante las 3 semanas después del próximo 25 de marzo. Así que toca abrir la puerta a este nuevo método de medición y de comprender el comportamiento web, que se acerca mucho más a la realidad actual y a poder tener una visión completa y absoluta del usuario como tal.

Y ahora es ese momento en el que, los usuarios de GA Classic, se están preguntando como hacen para migrar a Universal y que tan complicado va a ser. ¡Tranquilos! Google nos facilita la migración automática a Universal de todas las cuentas, tanto webs como apps, migración que nosotros deberemos completar con la modificación de la implementación nueva (todo lo bueno tiene su precio y Universal no iba a ser menos). Así que este es uno de los puntos en los que nos va a tocar ponernos manos a la obra y modificar toda la implementación de nuestro site, pero tranquilo: Si eres de los que prefieren que se lo den todo hecho, aquí te dejamos nuestra propuesta de implementación a medida.

La otra parte en la que nos va a tocar trabajar va a ser en aprender a exprimir al máximo este nuevo juguete que nos trae Google. A lo que queréis aprender cómo usar Universal, ¿pensabais que vuestros colegas de Metriplica os iban a dejar tirados? ¡Claro que no! Por eso os dejamos aquí nuestro curso recién salido del horno y en castellano.

Así que ahora toca trabajar un poco (si es con ayuda siempre es mejor) y aprovechar al máximo todo este nuevo mundo de posibilidades a nuestro abasto que nos brinda Universal Analytics. ¡A disfrutar! 😉

Klipfolio: La herramienta de dashboarding definitiva

02/04/2014 a las 08:01

No es nada nuevo para ninguno de nosotros la importancia y la necesidad de tener un dashboard (o cuadro de mando) que resuma los KPI’s de nuestro site y nos permitan llevar un control periódico del estado de la web e idealmente de nuestro negocio en general (como es el caso de klipfolio). Estas herramientas me gusta verlas como un termómetro que te permite ver (mensualmente, semanalmente, diariamente, etc.) el estado de tu negocio de un vistazo y a grandes trechos; para luego “bajar” a investigar en Google Analytics (o en la herramienta que usemos para la medición web), CRM, BI y demás herramientas de almacenamiento de datos de nuestro negocio, en caso de haber observado algo distinto de lo esperado en dicho dashboard.

Se conocen muchas herramientas de dashboarding, incluso podemos construir nuestros pequeños cuadros de mando dentro de algunas herramientas de medición web (como es el caso de GA); pero no resulta nada sencillo encontrar una que llegue al perfecto equilibrio entre diseño, coste y flexibilidad a la hora de trabajar con los datos. Después de investigar a fondo en el tema, probando muchas de estas herramientas al detalle, hemos llegado a la conclusión que la herramienta que se aproxima más a este equilibrio perfecto es Klipfolio: herramienta de bajo coste, con un diseño espectacular (como os mostraré más adelante), sencilla de usar y con una flexibilidad inmensa. No en vano es la herramienta utilizada por los más grandes (aquí os dejo algunos de ellos):

 

Veamos algunos de los puntos por los que Klipfolio marca la diferencia:

1. Puedes trabajar con muchas fuentes de información distintas. Gracias al gran abanico de tipos de queries distintas que puedes elaborar con Klipfolio, puedes reunir en un mismo dashboard datos procedentes de:

Como os podéis estar imaginando, las posibilidades que esto conlleva son muchísimas; tantas que por el momento no se nos ha presentado por delante ningún dato que tengamos y no hayamos podido subir, moldear y mostrar en Klipfolio.

2. Sus agradables e interactivas visualizaciones hacen que sea todo un gusto usar el dashboard. Dentro del entorno de Klipfolio, todos los gráficos y las tablas permiten la interacción del usuario (ordenación de los campos de una tabla según los valores de una columna, eliminación de una tendencia concreta en un gráfico, detalles numéricos al pasar el ratón, etc.). Además siempre tenemos disponibles dos versiones del dasboard (clara y oscura) que readaptan todos los colores (tanto de gráficos como de texto) y que junto al buen trabajo del multiplataforma efectuado por Klipfolio nos permiten una agradable visualización de los datos en el dispositivo que sea y donde sea.

3. Elaborando el dashboard puedes conseguir cosas muy chulas. Añadir un logo al dashboard y que este se adapte a los distintos colores y tamaños de visionado del dashboard, organizar los klips en distintas pestañas, usar códigos de colores automáticos, añadir anotaciones, crear gráficos complejos como mapas y demás convierten tu dashboard en aquella herramienta imprescindible, agradable y atractiva que sí que tendrás ganas de usar (tu y todo tu equipo al que podrás empapar de la filosofía de los datos).

4. La actualización automática de los datos. Para datasources procedentes de herramientas como Google Analytics (y muchas más) optamos a una actualización periódica automática y muy flexible. De esta manera, si se ha garantizado una arquitectura robusta del dashboard y de sus klips, podemos ver los datos actualizados sin tener que pasar la pesadilla de actualizar queries a mano y totalmente ad hoc.

5. La exportación también es automática. La herramienta, que está pensada al detalle, también permite programar el envío de los dashboards por email a modo de recordatorio, para que ya no pueda haber excusas para no echarle un vistazo y para que pueda ser archivado con total comodidad.

6. Y todo lo que no os contamos. Después de más de un año de uso de esta herramienta tengo que dejar cosas en el tintero si no quiero que este post sea eterno, pero creo que queda más que justificada nuestra apuesta por esta herramienta.

 

Así que ahora ya sabéis nuestros secretos para conseguir unos dashboards útiles y magníficos: buenas ideas, manos hábiles y una herramienta fenomenal como Klipfolio. Si no queréis dejar de disfrutar de una herramienta así, ya sabéis donde encontrarnos; somos el primer partner de habla hispana de Klipfolio y estamos 100% dispuestos a ayudaros.

Dimension Widening: cómo ampliar los datos de GA con nuestros datos de negocio

22/11/2013 a las 11:38

Google Analytics nos tiene a todos revolucionados con su nueva herramienta de importación de datos: Dimension Widenning. Con esta nueva herramienta se pueden importar métricas y dimensiones adicionales a Google Analytics mediante la carga de un fichero CSV o mediante la programación a través de una API específica.

Nada más describir la herramienta a todo analista se le hace la boca agua (al menos esta fue mi reacción instantánea) y no es para menos, ya que con esta herramienta podremos hacer cosas tan interesantes como subir toda la información adicional sobre el negocio a Google Analytics y convertir así nuestro software de analítica web en el software en el que manejemos todos los datos del negocio; haciendo más práctico todo el manejo de datos interno y ahorrándonos el trabajo en paralelo en múltiples plataformas y programas.

Además, cuando trabajamos con Google Analytics siempre resulta imprescindible vincular los datos observados a las características del negocio con el que se trata. Con Dimension Widening podemos llevar esto a otra dimensión (valga la redundancia) al añadir información sobre los costes de la publicidad, historia del cliente, fechas en las que se han realizado eventos de promoción y mucha más información. Todo esto nos permitirá alinear mucho más Google Analytics con nuestra estrategia de empresa y proporcionar un mayor contexto a los datos obtenidos de la web para así tener una mayor posibilidad de detectar oportunidades de mejora.

 

Características del Dimension Widening

Una vez comentadas algunas de las muchas posibilidades que nos brinda esta nueva herramienta dentro de Google Analytics, veamos sus características:

  • Mediante Dimension Widening se pueden cargar dos tipos de variables: métricas y dimensiones. Esta distinción mantiene las características que tenía hasta ahora, entendiendo como métrica las variables que cuentan algo (por ejemplo dinero, tiempo, clicks, compras…etc) y como dimensiones aquellos atributos que dan información respecto al usuario o a las visitas que este genera.
  • Las posibilidades de trabajo son múltiples ya que puedes cargar datos sobre dimensiones y métricas ya existentes en Google Analytics o cargar valores para nuevas dimensiones y/o métricas hechas ad hoc.
  • Para vincular los nuevos datos subidos mediante Dimension Widening y los datos ya existentes en Google Analytics se usa una key que las relaciona. La forma de unir ambas fuentes de datos consiste en que GA busca en los datos subidos mediante CSV o API la variable que actúa como key y, dados los valores que esta toma, lo une a los datos de GA con los que coincide en los valores de la key (fila a fila).

 

Pasos a seguir para subir datos

La metodología a llevar a cabo para la subida de datos es sencilla y se compone de los siguientes pasos:

PASO 1: decidir qué datos subir

Está claro que antes de ponernos a usar Dimension Widening debemos pensar que qué información extra necesitamos en GA. Un ejemplo claro podría ser el de un videoclub online, donde los artículos a vender son las películas que tenemos representadas en la URL de su ficha con un ID de producto. Nos podría interesar en género de dicha película, su director, actores principales… y podríamos hacerlo subiendo mediante un CSV o la API una base de datos que contenga el ID de la película (variable que actuaría en este caso como key) y su director, su género y todas las demás variables que le puedan resultar de interés. De esta forma podríamos crear informes personalizados como por ejemplo uno en el que veamos las ventas que ha tenido cada género detectando así los que tienen una mayor salida.
Una buena idea en este punto de la metodología  es pensar en qué informes queremos lograr para poder así escoger la variable que nos servirá de key y estructurar los datos que subamos de la mejor forma posible para nuestros posteriores informes y análisis.

PASO 2: crear las variables personalizadas que necesitemos

Si se quiere trabajar con dimensiones o métricas que no están incluidas en Google Analytics debemos crear dimensiones o métricas personalizadas (en nuestro ejemplo podría ser “Director”). Hay que dejar claro que para llevar a cabo este paso necesitamos tener implementado Universal Analytics (analytics.js).

PASO 3: Crear el conjunto de datos de ampliación

El conjunto de datos de ampliación es ese que queremos subir mediante CSV o API para aumentar nuestras métricas y/o dimensiones en GA. Este conjunto de datos solo tiene que ser subido una vez, pero después de ese momento puede ser modificado las veces que se quiera para su actualización o corrección. Si bien es cierto que se puede modificar la información interna de los datos de ampliación, su esquema queda bloqueado (la key, las métricas y las dimensiones que contiene).

Los pasos a seguir para crear el conjunto de datos son estos:

  1. En Administrador, acceder a la cuenta y a la propiedad web en la que deseamos subir datos.
  2. Hacer clic en Importación de datos, en PROPIEDAD, para acceder a la vista de la tabla de conjunto de datos.
  3. Hacer clic en Nuevo conjunto de datos.
  4. Seleccionar el tipo “Ampliación de dimensiones”.
  5. Indicar un nombre para la fuente de datos (por ejemplo, “metadatos de películas”) y su descripción.
  6. Seleccionar una o varias vistas en las que queramos ver estos datos. Debemos agregar al menos una vista a un conjunto de datos para que esté activo. Si suprimimos todas las vistas de un conjunto de datos, este pasa a estar inactivo.
  7. Crear un esquema para el conjunto de datos. Debemos recordar que si deseamos ampliar dimensiones o métricas que no existen en GA, como “Director de la película”, deberemos crear estas dimensiones personalizadas antes de incluirlas en el esquema.
  8. Activar o desactivar la opción de sobrescribir (como os cuento a continuación, si dejamos activada esta opción podemos modificar los datos una vez ya subidos).
  9. Guardar el conjunto de datos.

PASO 4: Subir los datos

Como ya venimos diciendo podemos subir los datos mediante una API de forma automática o manualmente. Sea como sea deberemos tener los datos en formato .csv y con un esquema correcto (con una columna para cada dimensión y cada métrica de las que se haya especificado al crear el conjunto de datos, con los nombres de estos en la primera fila del csv y una variable que actúe como key).

PASO 5: Consultar datos en los informes

Como ya hemos comentado, una vez tengamos los datos en GA podemos crear un informe personalizado. En el ejemplo que tratamos, si hemos apliado el ID de película (en la URL de la página) con el nombre del director (dimensión personalizada creada de nuevo en GA), esta nueva dimensión no aparecerá en los reports habituales. Para ver información por director, deberemos crear un informe personalizado que incluyas las métricas que queremos ver con respecto a los directores y la dimensión correspondiente a la variable personalizada (director).

 

Limitaciones de Dimension Widening

Con este sistema podremos hacer 50 subidas por día y propiedad web y entre los datos de ampliación y los de costes podremos sumar un máximo de 50 conjuntos de datos por propiedad web. El máximo de peso subido por propiedad web es de 1TB (en GA Premium) y el tamaño máximo de cada archivo subido es de 1GB.

Si se detectan errores en el archivo subido, no se procesará ninguno de los datos de dicho archivo y se mostrara en estado de Error. Otra limitación es que los datos de Dimension Widening  se aplican a medida que se van procesando los datos de la visita, así que no se aplicaran todos los datos subidos al histórico de datos que se haya procesado antes de crear el conjunto de datos.

Por último dejar claro que la ampliación de información que hagamos es irreversible, así que una vez hagamos subidos datos a GA ya no es posible anular dicha ampliación. Por esta razón recomendamos que se cree una vista de prueba para realizar la ampliación y que penséis bien que datos subir mediante Dimension Widening y de qué forma.

A pesar de estas pequeñas limitaciones, está claro que ampliar los datos que tenemos en Google Analytics nos puede enriquecer muchísimo tanto nuestros informes como todos los insights que saquemos de ellos (que nunca debemos olvidar que eso es lo que andamos buscando).

Cómo identificar a los usuarios más valiosos de tu web con Segment Builder

29/07/2013 a las 10:16

La nueva herramienta de Google Analytics, Segment Builder, ha llegado con la intención de cambiar nuestra relación con los segmentos y las posibilidades que estos nos brindan, y tiene toda la pinta de que lo va a conseguir. Al leer sobre esta herramienta (por ejemplo en el post de mi colega Natzir) todos hemos pensado que puede ser “la caña”, pero para saber a ciencia cierta cómo y hasta donde podemos llegar con ella no hay nada mejor que ponerse manos a la obra y usarla.

Así que vamos a hacer un segmento para poder identificar a los usuarios más valiosos de nuestro site. Consideraremos que éstos usuarios son los que regresan con una mayor frecuencia, los que han visitado el site recientemente y los que hacen un gasto considerable en nuestro ecommerce.  Los usuarios que cumplen con estas 3 cualidades son los más valiosos para cualquier web con ecommerce.

Se advierte al usuario del uso de cookies propias y de terceros de personalización y de análisis al navegar por esta página web para mejorar nuestros servicios y recopilar información estrictamente estadística de la navegación en nuestro sitio web. Política de cookies Acepto