¿Necesitas calcular la edad en Power Query? ¡Aquí te explicamos como hacerlo!


Hola Explorador@s de datos!

En el post de hoy vamos a ver como podemos calcular la edad de una persona a partir de su fecha de nacimiento.

Tener guardada la edad de nuestro cliente o de de nuestro empleado como un atributo más de nuestro modelo semántico nos permite poder analizar el promedio de edad de nuestros clientes, las ventas según rangos de edad o la tasa de retención de nuestros empleados entre otras cosas.

Para todos esos cálculos necesitamos saber la edad de la persona, pero realmente, la edad en sí no es el dato importante ya que podríamos «asegurar» que en un máximo de 366 días, nuestra información estará obsoleta (todo el mundo ha cumplido 1 año más). Lo que nos da valor es saber la fecha de nacimiento de la persona porque a partir de ella podremos calcular su edad cada vez que se actualicen los datos.

Veamos como poder calcular esa información desde Power Query.

Partimos de una tabla de empleados donde tenemos el nombre del empleado, su ocupación y la fecha de nacimiento, tal como muestra la imagen de los datos ya cargados en Power Query

A partir de aquí, los pasos para crear una columna con la edad de cada empleado son simples.

  • Marcamos la columna que contiene la fecha [FechaNacimiento], vamos al menú Agregar Columna –> Fecha –> Antigüedad

La columna generada muestra en formato Duration el tiempo transcurrido entre la fecha y ahora mismo.

Si te sientes cómodo con el lenguaje M, puedes modificar la instrucción generada por Power Query para cambiar el título de la columna de [Antigüedad] por [Edad]

= Table.AddColumn(#"Tipo cambiado", "Edad", each Date.From(DateTime.LocalNow()) - [FechaNacimiento], type duration)

Una vez que ya tenemos la columna en formato duración y esté seleccionada, vamos a ir al menú Transformar–>Duración–>Total de Años para que muestre el resultado como el número de años equivalente. Este paso se realiza desde el menú transformar porque no queremos generar otra nueva columna si no que deseamos cambiar la existente.

Este es el resultado obtenido

Si observamos, nuestro primer empleado tiene una edad calculada de 39,17534247 años, y así ocurre con el resto de empleados, pero realmente, la respuesta que nos diría Juan sería de 39 años.

Y ¿qué pensáis que sería la respuesta de Ana Gómez? Según Power Query, Ana tiene 33,90410959 años y su respuesta esperada sería: «Tengo 33»

Cuando nosotros hablamos de nuestra edad, siempre respondemos con un número entero y redondeado a la baja. Por tanto, este será el último paso que realizaremos como transformaciones de la columna, le indicaremos a PQ que la redondee a la baja.

Ahora ya disponemos de la columna con la edad calculada para poderla utilizar en nuestros informes.

Espero que os haya sido de utilidad y nos leemos en próximos post Explorador@s de datos!

, ,

Deja una respuesta

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