AnalyticsPower BIVandal-Lab

Análisis de actividades de Strava en Power BI

En este post os pondré un ejemplo de cómo realizar un análisis básico de nuestras actividades y ejercicios en la app Strava utilizando Power BI. Monitorizaremos los kilómetros recorridos, las horas de ejercicio y los tipos de actividad que hemos realizado e incluso podremos llegar a ver el recorrido de una carrera en Power BI. Pero vayamos por pasos:

Cómo obtener los datos de las actividades de Strava

Desgraciadamente no hay una fuente Odata abierta a la que conectarse (o por lo menos yo no la he encontrado aún), así que tenemos 2 opciones disponibles:

Para este ejemplo optaremos por la segunda opción, pero si alguien con conocimientos de programación quiere colaborar en trabajar la primera, estaré encantado.

Descarga de fichero de Datos de Strava

Para solicitar una descarga de nuestros datos, debemos entrar en https://www.strava.com, loguearnos con nuestro usuario y contraseña. Una vez estemos dentro, pulsamos sobre nuestra foto de perfil en la parte superior derecha y en la opción “Configuración“:

Configuración Perfil en Strava
Configuración Perfil en Strava

En la pantalla de “Configuración”, elegimos la opción de menú “Mi Cuenta” y en la parte inferior pulsamos en el botón “Comenzar” del apartado “Descarga o elimina tu cuenta”. No os asustéis por el título, la descarga de datos está pensada por si quieres darte de baja y pretendes descargar antes tus actividades, pero no es necesario darse de baja para obtener el fichero:

Opción para Descargar el fichero de actividades de Strava
Opción para Descargar el fichero de actividades de Strava

Una vez que pulsamos el botón, ya podremos pulsar en “Solicita tu archivo” que hará que nos envíen un fichero comprimido a nuestro mail:

Solicitar tu archivo
Solicitar tu archivo

En unos minutos, recibiremos el mail en nuestra cuenta de correo:

Mail de Strava para decargar el archivo
Mail de Strava para decargar el archivo

Pulsa en “Descarga de archivo” en el mail que te ha llegado de Strava y se descargará en tu ordenador. Es un fichero comprimido ZIP llamado “export_”+ secuencia de números.

Descomprime el fichero en alguna carpeta de tu ordenador y verás que está compuesto de varias carpetas y ficheros planos:

Lista de ficheros descomprimidos
Lista de ficheros descomprimidos

Para el análisis general de nuestro Panel de Power BI sólo necesitaremos el fichero “activities.csv“. Si queremos llegar a analizar el detalle de cada carrera (ver la ruta en Power BI por ejemplo), deberemos de acceder a los ficheros GPX de la carpeta activities.

Creación del Panel de Power BI sobre Strava

Ahora ya empieza la parte fácil. Abrimos Power BI Desktop y elegimos como origen de datos “Texto o CSV“:

Origen de datos Texto o CSV
Origen de datos Texto o CSV

Indicamos la ruta hasta el fichero “activities.csv” que hemos descargado y veremos que contiene varias filas (una por cada actividad realizada).

No es necesario hacer muchas transformaciones. En mi caso sólo he usado la primera fila como encabezado a través de la opción “Usa la primera fila como encabezado“, y la opción “Reemplazar los valores” para reemplazar los puntos por comas en los campos numéricos.

Reemplazar puntos por comas en campos numéricos
Reemplazar puntos por comas en campos numéricos

El resultado de la tabla de actividades debería parecerse a la siguiente imagen:

Tabla de actividades de Strava
Tabla de actividades de Strava

Una vez que tenemos cargada la tabla de actividades, he añadido alguna columna adicional a través de fórmulas simples DAX:

  • Un campo “KM” para mostrar la distancia en Kilómetros en vez de metros:
KM = activities[distance]/1000
  • El campo calculado “HORAS” para mostrar la duración del ejercicio en horas:
HORAS = activities[elapsed_time]/3600
  • Un campo “MES” para indicar el número de mes de la fecha de la actividad:
MES = MONTH(activities[date])
  • Un campo “DIASEMANA” con una fórmula similar para mostrar el Día de la Semana:
DIASEMANA = WEEKDAY(activities[date];2)
  • Por último, un campo “HORA” para extraer de la fecha la hora a la que se realizó el ejercicio:
HORA = HOUR(activities[date])

Adicionalmente, he creado una medida calculada para calcular la velocidad media de las carreras:

VELOCIDAD CARRERA = CALCULATE(SUM(activities[KM])/SUM(activities[HORAS]);activities[type]="Run")

El resultado

Tras la preparación de los datos ya podréis crear un panel como el que os muestro a continuación:

En él podéis analizar los tipos de ejercicios que hacéis, las horas de ejercicio realizadas, los km recorridos, o que día de la semana hacéis más ejercicio.

Si queréis profundizar más en las actividades, en la carpeta “Activities” hay unos ficheros GPX con el detalle de cada carrera.

En mi caso no uso directamente Strava en mis carreras: grabo la actividad en mi reloj Suunto y la aplicación del reloj lo traspasa a Strava. Por ello, sólo me ha generado una carrea en formato GPX (la única que hice directamente en Strava, sin el reloj).

Os he dejado una segunda pestaña en el panel con el análisis de la carrera para que lo tengáis de ejemplo:

Detalle Carrera Strava
Detalle Carrera Strava

Para este gráfico de la ruta de una carrera en un mapa he utilizado una visualización personalizada llamada Route map que os podéis descargar desde el propio Power BI Desktop o desde la AppSource.

Conclusión

Como veis, no es nada difícil llevar un análisis de nuestro ejercicio registrado en Strava a través de Power BI. Cada vez que queramos actualizar datos, deberemos solicitar una descarga del fichero y descomprimirlo en la misma ubicación, y podremos actualizar los datos en Power BI Desktop sin problemas.

¿Qué os ha parecido este post? ¿Querríais colaborar en un proyecto para construir un conector automático para evitar tener que descargar los ficheros? Sólo tenéis que contactar conmigo a través de los comentarios de este post o con el formulario de contacto.

¡SUSCRÍBETE YA!
Doy mi consentimiento para almacenar mis datos para envío de newsletters.
Si te suscribes a la newsletter tendrás acceso a los <b><u>ficheros Power BI originales</u></b> de nuestros tutoriales y post. <br><br>Además tendrás derecho a participar en sorteos periódicos que realizaremos en el blog.
We hate spam. Your email address will not be sold or shared with anyone else.
Mostrar más

Iván Arribas

Llevamos siglos generando, relacionando, modificando y almacenando datos....es hora de que les echemos un vistazo. Espero que este blog sirva de ayuda a los que quieran introducirse en este mundo de la Analítica de Datos, igual que me está sirviendo a mi.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Información básica sobre protección de datos Ver más

  • Responsable: Iván Arribas Delgado.
  • Finalidad:  Moderar los comentarios.
  • Legitimación:  Por consentimiento del interesado.
  • Destinatarios y encargados de tratamiento:  No se ceden o comunican datos a terceros para prestar este servicio. El Titular ha contratado los servicios de alojamiento web a Bluehost que actúa como encargado de tratamiento.
  • Derechos: Acceder, rectificar y suprimir los datos.
  • Información Adicional: Puede consultar la información detallada en la Política de Privacidad.

Botón volver arriba
Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Ver
Privacidad