Ciudades Inteligentes: Tutorial de Power BI sobre Open DataPaloma Recuero de los Santos 24 abril, 2017 En este artículo, que publicaremos en dos post, hablaremos de Smart Cities y de cómo pueden utilizar sus datos para ser más “smart”. Trabajaremos con un dataset de ejemplo del London Data Store (sobre los servicios de los Bomberos) para aprender a utilizar Power BI Desktop como herramienta de análisis y visualización de datos. Y, por último, sacaremos conclusiones. I. Antecedentes: Smart Cities y Open Data Las ciudades ofrecen distintos servicios a los ciudadanos por lo cual necesitan recopilar y almacenar una gran cantidad de datos. Otros organismos y administraciones públicas, financiados por la ciudadanía, generan a su vez información geográfica, cartográfica, meteorológica, médica etc. Los partidarios de Open Data, la filosofía de Datos Abiertos, defienden que esta información debería ser accesible y reutilizable para el público en general, sin exigencia de permisos específicos. Consideran que restringir su acceso va contra el bien común, ya que se trata de información que pertenece a la sociedad, o ha sido financiada por ella. Hace ya casi una década, en 2010, se celebró el primer Open Data Day al que se sumaron 60 ciudades interesadas en poder usar esta información para ofrecer mejores servicios a los ciudadanos y ayudarles a resolver los distintos desafíos que se les planteaban. Figura 1: ¿Qué oportunidades nos ofrecen las Smart Cities? ¿Cuáles son esos desafíos? Aunque cada ciudad tiene sus particularidades, muchos de ellos son compartidos entre distintas ciudades del mundo. Hablamos de desafíos tales como el continuo aumento de la población, debido al desplazamiento de personas desde las zonas rurales a las ciudades, los problemas de tráfico, contaminación, encarecimiento de la vivienda, envejecimiento de las infraestructuras y servicios al borde del colapso. ¿Cómo se enfrenta una Smart City a estos desafíos? Cuando hablamos de Smart Cities, hablamos básicamente de infraestructura, conectividad, IoT, y, por supuesto, datos abiertos. Hablamos de tecnologías Big Data, machine learning y de extracción, transformación, normalización, procesamiento y exposición de datos, que nos permitirán sacar partido a toda esa información, detectar problemas, extraer patrones, analizar comportamientos, plantear hipótesis u optimizar modelos. En definitiva, usar los datos disponibles para optimizar los servicios ofrecidos a los ciudadanos. Un ejemplo Es muy interesante cuando el Open Data se gestiona a nivel local, ya que permite llevar a cabo iniciativas muy enfocadas a la problemática real de los ciudadanos. Por ejemplo, en muchas grandes ciudades, la escasez de plazas de aparcamiento supone un verdadero problema, mientras que a nivel regional, el número de plazas puede parecer adecuado. Las ciudades que facilitan información en tiempo real sobre la disponibilidad de estas plazas promueven el desarrollo de apps que dirigen a los conductores hacia éstas, reduciendo los tiempos perdidos en desplazamientos y a la vez los índices de contaminación. Otro ejemplo interesante son las apps basadas en los datos que ofrecen los ayuntamientos sobre contaminación y niveles de alérgenos para que las personas afectadas puedan tomar medidas que minimicen sus efectos. Figura 1: Ejemplos de Apps de Google Play que miden los niveles de polen. También se pueden combinar datos de distintas fuentes, datos procedentes de administraciones públicas con otros ofrecidos por empresas privadas (convenientemente tratados para eliminar de ellos la información confidencial de los clientes). LUCA colabora en iniciativas de Big Data for Social Good aportando un gran valor, al ofrecer a ONGs y gobiernos datos anonimizados sobre ubicación de terminales móviles que han demostrado ser de gran interés para generar insights sobre catástrofes naturales. Estos insights permiten enviar los recursos de ayuda de emergencia necesarios de forma más rápida y eficaz. Por esta razón, muchas ciudades, no solo las grandes capitales, quieren convertirse en Smart Cities. Porque una ciudad conectada usa la información y la tecnología para ofrecer a sus ciudadanos una política de transparencia (basada en datos abiertos), unos servicios más eficientes (optimizando el uso de los recursos públicos y reduciendo así los costes) y un empoderamiento efectivo (permitiendo una mayor participación de éstos en la toma de decisiones que afectan su día a día). Siempre hay un “pero…” Como siempre ocurre con los proyectos innovadores, no han faltado cantos de sirena y críticas sobre los riesgos de las Smart Cities. Algunos autores opinan que es un modelo impulsado por grandes empresas de ingeniería, tecnología y consultoría únicamente en beneficio de sus propios intereses y llegan al punto de pronosticar que serán la causa del “fin de la democracia”, como fue destacado en el articulo «The truth about smart cities: ‘In the end, they will destroy democracy«. Efectivamente, en ocasiones se pone la tecnología por delante de las personas. Sólo se piensa en sensores y algoritmos, se confunden los medios con los fines y no se tiene en cuenta cuáles son realmente las necesidades o problemas de los usuarios. En estos casos el resultado nunca podrá ser positivo. William Edgers, en su estudio “Making Cities Smarter: How Citizens’ Collective Intelligence Can Guide Better Decision Making” nos sugiere cómo tener en cuenta la inteligencia colectiva ciudadana para ayudar a los IT decision-makes a construir una smart city de verdad, construida “desde abajo” y dirigida por los ciudadanos (“bottom-up or citizen led aproach”). II. El problema Figura 2: Imagen del London Data Store. Londres fue una de las primeras ciudades europeas que apostó por una iniciativa Open Data, y, en Enero de 2010 puso en marcha el London Data Store donde se publicaron conjuntos de datos relativos a temas muy variados: economía y empleo, transporte, medio ambiente, seguridad, vivienda, salud etc. Este Data Store contiene más de 500 datasets y su web es visitada, cada mes, por 50.000 personas. En 2015 recibió el premio ODI Open Data Publisher Award por su labor pionera en la publicación de datos abiertos tanto a nivel local como regional. Es un excelente ejemplo de Open Data mantenido a nivel local, que, como hemos dicho antes, puede ser muy útil para emprender iniciativas que preocupan a sus ciudadanos, aportan soluciones a problemas concretos, y se traducen en un uso innovador de la tecnología en beneficio de los habitantes de la ciudad. En el siguiente post, vamos a trabajar sobre uno de los data sets posiblemente más “pintorescos” de los que ofrece el London Data Store. Recoge los servicios de rescate animal del Cuerpo de Bomberos de la ciudad (London Fire Brigade). El análisis de estos datos va a poner sobre la mesa un problema al que intentaremos proponer soluciones. ¿A qué desafío tuvieron que enfrentarse los bomberos de Londres? Figura 3: Bomberos de Tottenham tras rescatar a una gata preñada. Los datos Vamos a pasar a explicar paso a paso cómo analizar los datos del London DataStore. Primero descargamos la tabla Excel correspondiente: Figura 4: Imagen del London Datastore. Pantalla de descarga de los datos de trabajo. Se trata de una tabla de 4751 registros, que recoge la información sobre las salidas de los bomberos para cubrir este tipo de servicios. Los campos principales son el número de incidente, la fecha y hora del aviso, las horas dedicadas, el coste del servicio, el tipo de animal implicado, una breve descripción del problema, origen del aviso, tipo de localización etc. Aunque no es relevante para nuestro análisis, siempre que se descarga algún fichero o documento de la web, en este caso una tabla Excel, conviene comprobar su nivel de seguridad en cuanto a exposición de metadatos. Estos “datos sobre los datos” ocultos en los ficheros pueden ofrecer información sensible sobre nuestro entorno de trabajo sin que seamos conscientes de ello. Para ello, usamos la herramienta Metashield Analyzer. En este caso, simplemente analizaremos el fichero (Step 1). Cuando seamos nosotros los que publiquemos información en un datastore, nos aseguraremos de no publicar información que nos podría perjudicar oculta en los metadatos usando Metashield Protector (Step 2). Figura 5: Opciones a elegir de la página web de Metashield Analyzer. El resultado del análisis nos muestra un nivel de riesgo bajo. La información “expuesta” inadvertidamente es la relativa a la impresora y al creador del documento. No obstante, siempre conviene hacer la comprobación. Figura 6: Resultado mostrado al analizar el Excel de trabajo con Metashield Analyzer. Vamos a trabajar con una herramienta que nos permite realizar análisis visuales de forma muy intuitiva y crear informes que pondrán de relieve los patrones que comportamiento de los datos. Se trata de la herramienta Power BI Desktop. https://empresas.blogthinkbig.com/wp-content/uploads/2017/04/1_Introduccion_PowerBI.mp4 “Power BI es una colección de servicios de software, aplicaciones y conectores que funcionan conjuntamente para convertir orígenes de datos sin relación entre sí en información coherente, interactiva y atractiva visualmente. Un flujo de trabajo habitual de Power BI comienza en Power BI Desktop, donde se crea un informe. Luego, ese informe se publica en el servicio Power BI y después se comparte para que los usuarios de las aplicaciones de Power BI Mobile puedan usar la información. “ Power BI permite, por tanto crear informes visuales usando distintos orígenes de datos, desde una sencilla tabla Excel a una colección de almacenes de datos híbridos locales o basados en la nube, compartirlos, actualizar la información en tiempo real etc. Pero en este caso, no necesitamos complicarnos tanto. Tenemos una sencilla tabla de Excel, vamos a cargarla en la herramienta desktop y vamos a sacar unos informes que no necesitamos publicar en ningún servicio. Podemos trabajar sin ningún problema con la versión gratuita de la herramienta, para lo cual únicamente tendremos que registrarnos. Nos descargamos la aplicación y la instalamos como cualquier otra aplicación Windows. Figura 7: Pantalla inicial de instalación de Power BI Desktop. Detecta automáticamente la arquitectura de tu S.O. y descarga la versión que corresponda (en este caso, X64). Formateamos los Datos En este ejemplo, vamos a trabajar con un archivo Excel. Si trabajáramos con archivos Excel en OneDrive, los informes y paneles en Power BI se actualizarían automáticamente al realizar cambios y guardar el trabajo. Para que Power BI pueda importar los datos del libro, los datos deben tener formato de tabla. Es fácil. En Excel, puede resaltar un rango de celdas y, en la pestaña Insertar de la cinta de Excel, haga clic en Tabla. También es importante asegurarse de que todas las columnas tengan un nombre adecuado para poder encontrar con mayor facilidad los datos que nos interesen al crear informes en Power BI. Aunque muchos de estos aspectos se pueden modificar también una vez cargado el fichero, siempre suele ser más cómodo y rápido hacer esa depuración previa de los datos antes de cargarlos. Creamos, pues un nuevo informe y elegimos la primera de las fuentes de datos disponibles: Excel. Obtener datos > Archivos > Archivo Local, para buscar y seleccionar el archivo de Excel que desea. https://empresas.blogthinkbig.com/wp-content/uploads/2017/04/2_Carga_datos.mp4 Figura 9: Pantalla de selección. Permite seleccionar qué hoja/hojas del libro Excel queremos cargar. Ofrece una visualización parcial de los datos y permite realizar ediciones. Figura 8: Pantalla de selección de la fuente de datos. Muestra todas los posibles “data source”. Aparece una nueva ventana que nos permite elegir qué hoja de la tabla de datos nos interesa. Nos muestra una previsualización de la tabla y nos da la posibilidad, como indicamos antes, de editarla. En este caso, la cargamos directamente seleccionando el botón “Load”. Como estas cosas nunca salen bien a la primera, nos aparece un bonito mensaje de error. Tenemos nada menos que 2853 errores. Podemos investigar su origen directamente desde aquí “View Errors”. Figura 10: Mensaje de error que aparece en este ejemplo tras cargar los datos. Parece que el formato de fecha de “Fin del Servicio” es el que da problemas. Ha puesto el mismo valor en todos los campos. Figura 11: En amarillo podemos ver los campos que no se han cargado correctamente. Como es un dato que no nos aporta información relevante (los servicios tienen una duración de horas y no de días y teniendo de forma correcta la fecha de inicio del servicio este dato es redundante), podemos directamente eliminar la columna. Seleccionamos la columna completa y en el menú contextual elegimos la opción “Remove”. Figura 12: Eliminamos una de las columnas. Otra opción sería eliminar la columna y quedarnos sólo con el dato del año: Figura 13: En lugar de eliminarla, transformamos el dato para quedarnos con el año. El formato del campo “DateTimeOfCall” tampoco parece el adecuado. En este caso, optamos por la opción “Change Type” del mismo menú, y lo convertimos en formato decimal. Figura 14: Cambio del formato del campo DateTimeOlCall a formato fecha/hora Al volver a cargar los datos, aunque se ha reducido el número de errores, sigue fallando el formato de uno de los campos. Ahora se trata del campo “IncidentNumber “. El formato que hay que aplicar en este caso es el formato “Texto”. “Close and Apply”. Figura 15: Cambio del formato del campo Incident Number a formato texto. Visualizamos los Datos con Power BI. Nociones básicas. Una vez cargados los datos podemos empezar a generar informes. Vamos a ver primero unas nociones básicas de la herramienta y después generaremos nuestro panel de informes para este caso concreto. La vista Informe tiene cinco áreas principales: La cinta de opciones, que muestra las tareas comunes asociadas con los informes y visualizaciones La vista Informe , o lienzo, donde se crean y se organizan las visualizaciones El área de pestaña Páginas situada a lo largo de la parte inferior, que permite seleccionar o agregar una página de informe El panel Visualizaciones , donde puede cambiar las visualizaciones, personalizar los colores o ejes, aplicar filtros, arrastrar campos, etc El panel de Campos, donde elementos de consulta y filtros se pueden arrastrar a la vista Informe, o bien al área Filtros del panel Visualizaciones. Al cargar los datos, es en esta zona donde podemos ver los distintos campos que se pueden seleccionar para elaborar los informes. Para crear una visualización, basta con arrastrar un campo desde la lista Campos hasta la vista Informe. La visualización que aparece como predeterminada es la de tabla de datos.También podemos elegir primero el tipo de visualización que nos interesa y luego arrastrar los campos de datos sobre el marcador de posición generado en el lienzo. Figura 16: Al elegir una visualización, aparece en el lienzo el marcador correspondiente. Según vayamos arrastrando los datos, que dependerán del tipo de visualización seleccionado, los cambios se irán reflejando de forma automática, actualizando la visualización. Figura 17: Seleccionamos de la lista los campos que queremos añadir y los arrastramos sobre el lienzo o sobre la etiqueta correspondiente bajo la ventana “Visualizations” (Axis, Legend etc.). Por último, podemos cambiar el tamaño de la visualización en el lienzo, recolocarla, editarla, añadir etiquetas, modificar colores etc. Según pasamos el puntero sobre secciones de las visualizaciones, veremos información sobre herramientas que contiene detalles sobre ese segmento, como etiquetas y su valor total. Figura 18: Podemos modificar la visualización directamente desde el lienzo (con el menú de su propia ventana), o bien con las distintas herramientas que aparecen en los menús a la derecha de la pantalla, según pasamos el puntero sobre ella. Volviendo a nuestro ejemplo, elegimos en primer lugar una visualización de tabla. Se crea el marcador de posición y, según vamos seleccionando qué campos de datos nos interesan (en amarillo), éstos se van agregando a la tabla. Figura 19: Los campos seleccionados (en amarillo) aparecen bajo la columna “Values”. En esta visualización (tabla) se pueden agregar los campos seleccionándolos directamente de la lista. En otras visualizaciones, conviene arrastrar el campo bajo la columna cuya etiqueta sea la que nos interese (Legend, Shared Axis, Column values, values etc). Al mismo tiempo, se van añadiendo filtros para cada uno de esos campos de datos: Figura 20: En nuestro ejemplo, al agregar el campo “AnimalGroupParent”, automáticamente nos va a permitir filtrar por cada uno de los tipos de animales que aparecen en el grupo. Ya tenemos una herramienta para trabajar sobre el dataset de los servicios especiales de los bomberos de Londres. Tenemos la «lupa» para analizar las pistas. La pregunta es ¿a qué conclusiones llegaremos? No te pierdas el próximo post: ¿Cuánto gastan los bomberos londinenses por salvar a gatitos indefensos? El Open Data responde No te pierdas ninguno de nuestros post. Suscríbete a LUCA Data Speaks. También puedes seguirnos en Twitter, YouTube y LinkedIn LUCA y Sierra Nevada utilizan el Big Data para mejorar la experiencia de los esquiadoresUsos inverosímiles del Open Data: dónde aterrizar con tu paracaídas
AI of Things Qué es el invierno-IA y cómo evitarlo ¿Estamos al borde de un nuevo invierno-IA? ¿Qué factores podrían propiciarlo? Cómo una legislación restrictiva, la falta de formación y de avances tecnológicos y otras preocupaciones podrían impactar el...
Telefónica Tech El poder de la digitalización sostenible en la lucha contra el cambio climático El cambio climático es considerado el mayor desafío de nuestro tiempo. Sus efectos abarcan desde la desertización y sequías hasta inundaciones y aumento del nivel del mar. Algunas de...
Roberto García Esteban ChatGPT y Cloud Computing: un matrimonio bien avenido ChatGPT (quizá no sepas que son las siglas de Chat Generative Pre-Trained Transformer) está en boca de todos por su impresionante habilidad para generar textos que parecen escritos por...
Olivia Brookhouse ¿Puede la Inteligencia Artificial entender las emociones? Cuando John McCarthy y Marvin Minsky iniciaron la Inteligencia Artificial en 1956, se sorprendieron de cómo una máquina podía resolver rompecabezas increíblemente difíciles en menos tiempo que los humanos. Sin...
Javier Martínez Borreguero Automatización, Conectividad e Inteligencia Aumentada al servicio de una reindustrialización competitiva, disruptiva y sostenible Por segundo año consecutivo vuelvo a participar en el Advanced Factories (AF 2023), la mayor exposición y congreso profesional dedicado a la Industria 4.0 del sur de Europa. Un...
Nacho Palou Medidas para reducir la brecha digital de género sin esperar 32 años El informe Sociedad Digital en España 2023, de Fundación Telefónica, dedica un apartado específico para analizar la brecha de género en el ámbito del talento digital. Destaca que, si bien...