Preparando los datos para analizar #Doityourself

Desde que comencé esta aventura de con www.datosydeporte.com cada semana algunos de vosotros os habéis ofrecido a enviarme todos los datos que tenéis de vuestros entrenamientos. Os lo agradezco y para algún trabajo específico de análisis como los que me gustaría hacer sobre entrenamientos de tiradas de maratón etc, probablemente lo haga, pero el objetivo principal es mostraros cómo lo podéis hacer vosotros mismos con vuestros datos y a través de un registro gratuito en www.bigml.com podáis analizar vuestros entrenamientos en busca de información relevante que os haga poder mejorar esos entrenamientos.

IMG-20150225-WA0005

En los artículos anteriores os he intentado mostrar cómo descargaros vuestros datos, archivos GPX, desde diferentes plataformas dónde los podemos tener recopilados. También cómo transformar esos datos a través de diferentes herramientas para obtener más datos con los que “jugar” en un análisis.

Screenshot_2014-12-10-20-12-42

Y ahora lo que os voy a proponer es qué datos podemos tomar para organizarlos en un Excel/googlesdoc/csv para poder analizarlos en Bigml.

Cómo el movimiento se demuestra andando, os dejo mi propuesta de datos que trasladaré a un archivo y que la próxima semana os mostraré la información y espero que os animéis a hacerlo vosotros y a compartirlo.

Para este proyecto voy a utilizar los datos de preparación del maratón de Berlín hasta que me lesioné,  7 semanas de entrenamiento en #Objetivo42k del 8 de junio al 26 de julio de 2015 que son púlicas ya que tengo los tracks publicados en Strava y en mi Blog:

Semana 1Semana 2Semana 3Semana 4Semana 5Semana 6Semana 7

También incluiré los datos de los dos meses anteriores de entrenamiento, desde el 4 de abril de 2015 al 7 de junio. En total serán unos 160 tracks de entrenamiento (Hay más que días porque en ocasiones doblo sesión mañana y tarde y en otras tomo en archivos diferentes el calentamiento y las series) que podéis ver en mi perfil de Strava

IMG_20150210_224729

¿Qué datos tomaré?

Una vez tenemos los Tracks ¿qué datos tomamos que podamos manejar? Creo que hay que ser práctico y cada uno conoce los datos extra que registra a parte de los entrenamiento y que le pueden interesar: Peso, horas de sueño, sensaciones (Escala subjetiva), condiciones climatológicas, …

2015-07-22 13.06.20

En mi caso esta vez voy a utilizar la web www.ibpindex.com con su índice IBP y algo más de información extra que nos aporta de cadas Track:

  • Fecha del entrenamiento
  • Hora de inicio (Importante si queremos apreciar diferencias entre los entrenamientos entre madrugada, mañana, tarde, noche, etc)
  • Índice IBP (Dureza o dificultad del recorrido)
  • Distancia del entrenamiento
  • Altitud inicial (Nos da info de la cota a la que estamos entrenando por si variamos de lugar de entrenamiento y queremos ver si las diferencias de altitud son soignificativas)
  • Tiempo de entrenamiento (Cojo el tiempo en movimiento)
  • Velocidad media en movimiento (km/h)
  • Velocidad máxima sostenida (Km/h)
  • % del track entre +1-(-1)% de desnivel (O sea, plano)
  • Tipo de entrenamiento. Categorízo si es entrenamiento de series, rodaje, Tirada, calentamiento, Doble sesión.

¿Qué otro datos podemos incluir?

Ahí ya entra lo que cada uno quiera exprimirse la cabeza o los datos, o las rutinas de registro de datos o acceso a datos automatizados que podáis tener. Os dejo unos ejemplos con la aportación que pueden hacer al análisis:

  • Si tenemos teléfono móvil con App de salud un una pulsera tipo FitBit es fácil que podamos incluir los datos del podómetro que toma día a día y puede ser un índice de actividad.
  • Horas de sueño o la hora a la que nos levantamos. Puede ser interesante para analizar cómo afectan las horas de sueño o, si nos afectan los madrugones.
  • Si nos preocupa el tema “comidas” un primer acercamiento es registrar la hora a la que comenzamos a comer y ver cómo afecta a los entrenamientos que hacemos después. Si nos metemos con el tipo de comidas podemos analizar qué comidas nos sientan mejor o cuales nos sientan mal.
  • Peso, acordaros registrarlo a la misma hora siempre para evitar la variabilidad intradiaria.
  • Escala de Borg. Es una escala en la que valoramos de 0 a 10 cómo nos hemos encontrado de energía ese día, por ejemplo 10 sería que te has encontrado genial y el entrenamiento los has completado perfectamente y 0 para un día en el que tienes malas sensaciones, te molesta todo (Agujetas o dolores por enfermedad) y no has sido capaz de completar el entrenamiento.
  • Si hemos entrenado solos o en grupo. Podemos valorar si se nota a mejor o a peor cuando entrenamos en grupo si solemos alternar.
  • Lugar de entrenamiento o circuito. Puede que tengamos la impresión de que los rodajes nos salen mejor en ese parque determinado pero no estamos seguros.
  • Día de la semana. Así podemos detectar qué días nos encontramos mejor o con más energía dentro del ciclo de la semana.
  • Datos climatológicos. Esto quizás sea más complicado ya que hay que buscar a posteriori información sobre temperaturas, humedad o vientos en la zona donde entrenes, pero si lo vamos anotando día a día nos dará información real sobre si nos afecta o no el frío, calor, humedad y hasta qué punto.
  • Zapatillas. Si cambiamos a menudo de calzado del mismo tipo nos puede dar información sobre qué zapatilla nos ajusta mejor. Por ejemplo si para rodar varío entre Asics Nimbus y Asics Cúmulus pudo intentar detectar si con una de las dos entreno mejor o no.
  • Entrenamiento de los días anteriores. Una vez registrados todos los datos podemos añadir columnas con el tipo de entrenamiento o la escala de borg de los días anteriores a cada entrenamiento y así poder detectar patrones y predecir cuándo vamos a tener un día bueno o un día malo.
  • Días que pasamos por el fisioterapeuta. A muchos nos asalta la duda de cuándo darnos masaje, antes o después de las series, en un día de descanso o no. Si añadimos el dato de los días que han pasado desde que visitamos a nuestro físio podremos analizar ese parámetro y ver qué día es el que mejor nos encontramos tras un masaje de descarga. Por ejemplo, el día que recibimos el tratamiento sería el día CERO y a partir de ahí vamos sumando 1, 2, 3, 4 hasta que vayamos de nuevo al fisioterapeuta.
  • Si tenemos una lesión no invalidante pero que nos molesta y queremos detectar cómo evoluciona por la sensación subjetiva de molestia podemos utilizar una escala subjetiva de 0 a 10 dónde 0 es que no molestó nada y 10 es que no te dejó entrenar. Podremos analizar a posteriori la evolución de la lesión respecto a la cargas de entrenamiento.

IMG-20150329-WA0002

Y seguro que se os ocurren a vosotros muchos más datos de interés.

Yo me pongo manos a la obra y espero, la próxima semana, mostraros los datos e información que he podido extraer de los mismos.

Ya sabéis, si alguno se anima, que lo comparta, y cualquier duda preguntad.

Cómo descargarnos nuestros entrenamientos de plataformas o Apps #DoItYourself #Datos

App de entrenamiento

En este blog hablamos de datos y más datos, pero ¿dónde están mis datos de entrenamiento?

En mi caso, desde 1995 hasta bien entrado los años 2000 están en libretas de entrenamiento en las que he llegado a anotar, además de los entrenamientos, tiempos de series y demás, pulsos basales, sensaciones, alimentación, etc. A partir del año 2005 que comencé a entrenar con Antonio Serrano me liberé un poco de esa carga y, la verdad, algún día me pasaré por su casa para que me deje hacer fotocopias de su libreta mágica. Y, por último, a partir de 2009, comencé a compartir y guardar la información de mis entrenamientos en plataformas como Garmin Connect, Strands, Endomondo (Adquirida por ADIDAS), Runtastic (Adquirida por UNDER ARMOUR), Strava, Suunto, Polar, TomTom MySports, FitBit, NIKE+, DailyMile, MapMyRun,  RunKeeper,  además de compartirlas en mi Blog durante la preparación de algunas maratones que habéis podido seguir.

Ahora estamos llegando a un nuevo paso como es el de los agregadores como Runator o RankRunner que nos permiten descargar desde todo tipo de aplicaciones y plataformas nuestros entrenamiento para que el histórico, por así decirlo, esté siempre en el mismo sitio y no tengamos que hipotecar nuestra existencia y la de nuestros entrenamientos a un mismo modelo de móvil, GPS o App.

Pero seguro que nos gustaría tener esa información más a mano y, sobre todo, poder “jugar” con ella en cuanto a análisis de datos.

Los más “freaks” seguro que, aun subiendo sus entrenamiento en alguna plataforma, siguen conservando sus libretas de entrenamiento o, la evolución natural, a las hojas EXCEL más o menos dinámicas.

Como uno de los objetivos de este blog es animaros a que juguemos con vuestros datos de entrenamiento de cara a poder optimizar vuestros entrenamiento o descubrir  cosas interesantes que os puedan ayudar a mejorarlos, vamos con este primer capítulo del #Doityourself para explicar, en principio de algunas, pero para eso están los blogs colaborativos, de todas las plataformas que hay o que vayan surgiendo, cómo podemos descargarnos nuestros datos, sobre todo teniendo en cuenta que muchos de los nuevos “runners” acceden directamente al espacio online sin pasar por los tradicionales “diarios de entrenamiento”.

Uno de los principales problemas que nos encontramos es que cuando queremos descargar las información de las plataformas, lo que nos podemos descargar es el archivo de datos del GPS, normalmente en formato de extensión GPX, pero toda la información extra que podemos incluir en nuestro diario de entrenamiento virtual: Zapatillas, sensaciones, climatología, etc, no suele venir acompañando al resto aunque seguro que en los comentarios alguno colgará trucos para poder hacerlo.

En principio vamos a mostrar cómo descargarse estos archivos GPX, archivos con la información de posición, tiempo, pulso si se ha registrado y elevación, normalmente generados por los dispositivos o apps basadas en la tecnología GPS.

Vamos a mostrar cómo hacerlo desde tres plataformas: STRAVA, ENDOMONDO y GARMIN CONNECT que son las tres que he utilizado yo últimamente. Si alguno quiere compartir cómo hacerlo desde otra aplicación que él utiliza puede colgarlo en un comentario o mandármelo por email y lo incluiré en el artículo.

GARMIN CONNECT

Los amigos de Garmin Connect te obligan a descargarte una a una las actividades ya que si vas al apartado en el que puedes ver el listado de actividades y seleccionas una o varias, sólo te da la opción de descarga como archivo CSV incluyendo la información de totales y laps a lo sumo.

Para descargar el archivo en formato GPX del entrenamiento nos tenemos que ir a la actividad que estamos interesados en descargar y pulsando sobre la rueda en la parte superior derecha se desplegará un menú:

DescargaDatos_01_Garminconnect01

En dicho menú tendremos la opción de descargarnos el archivo en diferentes formatos: Original, TCX, GPX, Google Earth o CSV.

DescargaDatos_01_Garminconnect02

STRAVA

La aplicación STRAVA nos ofrece la doble opción, por un lado descargarte el archivo desde una actividad concreta pulsando sobre la “llave inglesa” aparecerá el menú que nos da la opción de “Exportar GPX”.

DescargaDatos_02_Strava04

O bien, lo que nos podría interesar en este caso, la posibilidad de descargarnos a la vez todos los archivos de nuestras actividades en formato GPX de la siguiente forma.

Nos vamos al apartado “Mi PERFIL” donde encontraremos, en la parte inferior derecha, un botón que nos indica “Descarga tus datos”

DescargaDatos_02_Strava01

Al pulsar el botón “Descarga tus datos” nos aparecerá una ventana informando que se nos enviará un email con un enlace para descargar todas las actividades. Deberemos pulsar en “Descargar todas tus actividades”.

DescargaDatos_02_Strava02

Y en pocos segundos o minutos recibiremos un email en nuestra dirección de correo electrónico que tengamos configurada en STRAVA con un link en el que, al pulsarlo, se descargará un archivo comprimido con todos los archivos GPX de nuestras actividades:

DescargaDatos_02_Strava03

ENDOMONDO

Por último, por ahora, en la plataforma ENDOMONDO, recientemente adquirida por UNDER ARMOUR, sólo nos da la opción de descargar las actividades de forma individual.

En la actividad que queramos descargar, al pulsar sobre la pestaña de menú arriba a la derecha, junto a los botones de compartir en Facebook y Twitter, pulsamos sobre la opción “EXPORT”

DescargaDatos_03_Endomondo01

Y nos dará dos opciones de formato para la exportación: GPX y TCX.

DescargaDatos_03_Endomondo02

En el próximo post en formato #DoItYourself os mostraré cómo transformar esos datos de forma automática para, a partir de los archivos GPX, poder tener datos tan interesantes como la velocidad o la pendiente de subida/bajada. Datos a los que podremos sacar jugo, por ejemplo, para aquellos que se muevan por la montaña.

¿Se puede predecir el “muro” en el maratón?

Pablo Villalobos tras cruzar la meta en el maratón del Campeonato del Mundo en Daegu (Corea del Sur) en 2011

Pablo Villalobos tras cruzar la meta en el maratón del Campeonato del Mundo en Daegu (Corea del Sur) en 2011

Esta semana os escribo desde Valencia dónde me encuentro participando en la “Summer School in #MachineLearning” organizado por BigML en colaboración con la Universidad Politécnica de Valencia y desarrollada en Las Naves.

Han sido dos días apasionantes en los que aprender un poco más sobre el aprendizaje automático, el análisis predictivo de datos, sus aplicaciones, etc.

Como os pedí la semana pasada he empezado a recibir algunos datos de colaboradores a través del Blog y me he traído a Valencia bajo el brazo un archivo de datos que me hizo llegar Jesús y que había recopilado y analizado por su cuenta.

Los datos: Jesús había recopilado las marcas, para corredores que habían participado en ambas pruebas en su edición de 2014, la marca del medio maratón y del maratón de Valencia del año 2014, además de los parciales cada 5km del maratón. Un total de 1178 atletas con marcas entre 2h30 y 4h30.

Nuestro amigo Jesús había jugado ya con los datos consiguiendo la relación entre la marca en la media de Valencia y el maratón y, por tanto, estableciendo un tiempo estimado por esta fórmula para cada participante que podía o no coincidir con el ritmo real que habían desarrollado en la maratón. A partir de ahí, comparando los parciales cada 5km con ese ritmo estimado, se estudió su linealidad y la estrategia de carrera dividiendo esta en tres partes: de la salida al km15, del km15 al 30 y del 30 al final. Todo ello de cara a establecer si la estrategia de carrera era correr a un ritmo constante, más a menos (Pinchando al final) o de menos a más (Corriendo en negativo).

Las conclusiones eran muy interesantes y ahora nosotros queríamos aportar el punto de vista predictivo.

Hemos querido analizar los mismos datos con el objetivo de detectar qué variables pueden tener más peso a la hora de poder predecir si el corredor se va a encontrar con el MURO en el maratón. Algo muy interesante ¿Verdad? Porque el MURO en el maratón no nos lo queremos encontrar ninguno.

Cuando nos planteamos correr un maratón, lo más probable es que nuestra estrategia sea correrlo a un ritmo más o menos constante, aunque “pinchemos” un poco en la parte final, o, en el mejor de los casos, ser capaz de acelerar más en la parte final para correr en negativo.

Cuando se da la tercera situación, o sea, corremos mucho más lentos la parte final de la prueba, lo habitual es que nos hayamos encontrado con “el MURO” y, por tanto, no consigamos el objetivo de marca buscado.

Por todo ello, si conseguimos despejar aquellas variables que pueden predecir la llegada del MURO en el maratón podremos dar información al corredor de lo que debe o no debe hacer si quiere tener más posibilidades de hacer una carrera constante y conseguir su marca objetiva.

PRIMER PROBLEMA

Al analizar los datos nos damos cuenta de que no queremos utilizar la fórmula de estimación elaborada por Jesús a partir de los datos de la media y el maratón de 2014 ya que utiliza el dato del tiempo final del maratón de esos mismos corredores, una información que no deberíamos tener aún, sería hacernos un poco de trampas.

Esto lo hemos solucionado tomando otra fórmula estándar de predicción de marca en maratón a partir de la marca en la distancia de media maratón que aplicaremos a dicha marca para obtener el tiempo estimado que nos correspondería hacer en el maratón: Nuestro OBJETIVO.

SEGUNDO PROBLEMA

Está claro que utilizaremos los datos de los parciales de 5km de la prueba, pero ¿hasta dónde? De nada nos sirve que nos digan a qué ritmo tenemos que correr entre el km25 y el km30 cuando ya no tenemos margen de maniobra para evitar el MURO que tenemos delante. Por ello hemos decidido que sólo vamos a utilizar variables de la primera mitad de la prueba de cara a buscar esa capacidad de predicción.

¿Qué datos hemos utilizado?

  • Marca del medio maratón de Valencia 2014
  • Marca de maratón estimada por una fórmula estándar
  • Ritmo minutos/km d la marca estimada en maratón
  • Tiempos parciales de la marca estimada en maratón para 5, 10, 15 y medio maratón
  • Tiempos parciales reales del maratón de Valencia en 5, 10, 15 y medio maratón
  • Tiempos reales del maratón de Valencia en Splits Salida-5km, 5km-10km, 10km-15km, 15km-Media.
  • Diferencial en % entre los tiempos real y estimado del maratón en los splits Salida-5km, 5km-10km, 10km-15km, 15km-Medio maratón.
  • Linealidad (pendiente de la recta definida por los parciales reales del maratón).
  • Si el atleta ha encontrado el muro o no. Definimos el muro como una variación entre dos splits consecutivos a partir del 20-25km de más de un 6%

Hemos subido el archivo en formato CSV a BigML (lo compartiremos en breve en la Galería de BigML ya que el acceso es gratuito con archivos pequeños como este y podréis hacer vuestros experimentos y análisis en la herramienta para ver si mejoráis mis resultados).

Ahora os dejo un vídeo para que podáis ver cómo hemos trabajado los datos en BigML y lo sencillo que puede llegar a ser generar un modelo, evaluarlo y jugar con él. Cuantos más conocimientos de análisis de datos tengáis más vais a disfrutar con ello.


CONCLUSIONES

Como habréis visto en el vídeo, no hemos tenido un resultado muy positivo respecto a las variables con las que hemos trabajado. La opción es buscar más o nuevas variables que nos permitan aumentar la “accuracy” del modelo.

Desde mi punto de vista, creo que los parciales de 5km son demasiado amplios por lo que restan mucha sensibilidad. Si en lugar de esos parciales tuviéramos los archivos de datos de los GPS de los corredores con parciales de cada kilómetro, se podrían sacar más variables que tuviera más correlación con evitar el MURO.

Además, sería interesante poder incluir más variables que nos podríamos plantear recoger de cara a las ediciones de 2015, como por ejemplo: Qué tipo de avituallamiento, zapatillas, descanso la noche anterior al maratón, a qué hora os despertasteis esa mañana, qué tomasteis para cenar y desayunar antes del maratón, etc.

Creo que es una buena idea para lanzar desde este blog si os animáis.