Paloma Recuero de los Santos ENIA, la nueva Estrategia Nacional sobre IA Desde el pasado 2 de diciembre, España cuenta con una nueva Estrategia Nacional de Inteligencia Artificial, ENIA, dotada con un presupuesto de 600 millones de euros para medidas relacionadas...
LUCA LUCA Talk: Blockchain para garantizar la trazabilidad de vacunas FORMATO: Charla de 30 minutos + Q&A de 10 minutosCUÁNDO: 20 de enero, 16:00 h (CET)CÓMO: Inscripción gratuita en eventbrite Trazabilidad es una de las características que vienen a nuestra...
Álvaro Alegria Meunier Inteligencia Artificial y Tribunales – El debate sigue Todo aquel que tenga un mínimo interés sobre la actualidad mundial es consciente de que estamos a las puertas de una nueva revolución, impulsada por las posibilidades que ofrece la explotación de...
LUCA Las mejores certificaciones profesionales en Big Data Durante los últimos 10 años, hemos llegado a generar cantidades ingentes de datos. Tanto es así que se predice que para 2020 cada individuo llegará a generar 1,7 MB...
LUCA Una solución para adaptar la flota de vehículos frente a la COVID-19 y la tormenta Filomena La movilidad es un aspecto clave tanto en el día a día de las ciudades como en las situaciones excepcionales que hemos experimentado en el último año por la...
LUCA Caso de éxito: Departamento de Transporte de UK El Departamento de Transporte es el organismo gubernamental responsable de la mayor parte de la red de transporte del Reino Unido. Nuestro cliente necesitaba entender rápidamente los patrones de...
María Cascajo Sastre Caso de éxito: Mejora de los servicios de transporte en Bristol Connected Places Catapult es una empresa que opera entre los sectores público y privado, el gobierno local y las autoridades de transporte, y promueve un transporte más inteligente en...
LUCA Caso de éxito: Optimizando el plan de carreteras de Highways England La industria del transporte es una industria muy permeable a la aplicación de estrategias de Big Data e Inteligencia Artificial, ya que existen casos de uso claros para maximizar...
Paloma Recuero de los Santos Video Post #4: Hadoop para torpes (III y fin) Ecosistema y Distribuciones Hadoop Ya estamos llegando al final del camino. En esta miniserie nos planteamos desentrañar la compleja madeja de Hadoop. Explicar de forma clara y legible en qué consiste, para qué...
LUCA LUCA Talk: Akinator, un Sistema Experto convertido en adivino En la actualidad es muy común el uso de productos y aplicaciones basadas en la Inteligencia Artificial, desde Aura hasta Google Now. En este webinar os hablamos de Akinator,...
LUCA LUCA Talk: Blockchain para garantizar la trazabilidad de vacunas FORMATO: Charla de 30 minutos + Q&A de 10 minutosCUÁNDO: 20 de enero, 16:00 h (CET)CÓMO: Inscripción gratuita en eventbrite Trazabilidad es una de las características que vienen a nuestra...
Paloma Recuero de los Santos Video Post #18: Atrévete con Deep Learning. Principios básicos al alcance de todos ¿Sabes qué es el Deep Learning, en qué se basa y qué aplicaciones tiene? En este vídeo te daremos unas sencillas nociones que te ayudarán a comprender esta potente...
Python para todos: 5 formas de cargar datos para tus proyectos de Machine LearningPaloma Recuero de los Santos 1 octubre, 2019 Uno de los primeros pasos que hay que dar cuando queremos crear un modelo de aprendizaje automático en Python es cargar los datos a partir de los cuales construiremos nuestro modelo. Hay distintas formas de llevar a cabo esta tarea, que dependerán del formato que tengan los datos, su ubicación o los recursos/librerías de Python que queramos utilizar. Empezaremos por lo más sencillo. Cargar de ficheros csv en Python. Se trata de uno de los formatos de datos más habituales. A la hora de cargar un fichero csv, deberemos tener en cuenta algunos detalles como: Su ubicaciónSi tienen cabecera o “header”Si tiene comentarios (señalados por medio de #)Qué tipo de delimitador utiliza (“,”, “/”, espacios en blanco etc) Lo primero que habrá que hacer, por tanto, es guardar los datos en nuestro directorio de trabajo. Comprobamos cuál es mediante el comando os.getcwd(). Si queremos cambiarlo, podemos usar el comando chdir(), ojo que tenemos que usar “\” dobles para especificar la nueva ruta: Una vez que tenemos claramente definido el directorio de trabajo, guardamos en él los datasets con los que vamos a trabajar en nuestros proyectos. Para cargar estos datos en Python podemos usar distintas opciones: Cargar los ficheros CSV usando el módulo CSV de la librería estándar de Python Cargar los ficheros CSV usando NumPyCargar los ficheros CSV usando PandasCargar los ficheros desde la URLCargar ficheros de pruebas desde librerías (Staatsmodels, etc) 1. Usando el módulo csv de la librería estándar Para extraer los datos de un fichero csv, primero lo “abrimos” con la función open(). Después, usamos la función, csv.reader(), que lee línea a línea el fichero, y hace una lista de todas las columnas en el objeto reader. Es mucho más sencillo hacerlo que explicarlo, así que mejor, lo vemos con un ejemplo. Hemos guardado, en nuestro directorio de trabajo, un dataset de ejemplo con datos sobre diabetes. 2. Usando NumPy Otra forma de cargar los datos es usando la función numpy.loadtxt() de la librería NumPy. Para ello, lo primero que tendremos que hacer es cargar la librería. Esta función asume que el fichero no tiene cabeceras, y que todos los datos tienen el mismo formato. Como no es el caso de nuestro dataset sobre diabetes, usaremos el modificador “skiprow” para indicar que no debe tener en cuenta la primera fila. En este ejemplo, también le hemos pedido que nos indique las dimensiones del dataset y nos muestre los datos. 3. Usando Pandas Esta tercera forma de cargar los datos es, probablemente, la más popular entre los científicos de datos como veremos, por muy buenas razones. En este caso, la función que usaremos es readcsv(). Esta función nos ofrece una gran flexibilidad a la hora de importar datos, ya que de forma automática, o con una simple línea de comando, permite hacer cosas como: Detectar automáticamente las cabeceras o “headers”“Saltar” líneas con el modificador “skiprow“Detectar automáticamente el tipo de datos (número entero, decimal, cadena de texto etc)Identificar campos con datos erróneos o vacíosConvertir los datos en formato csv en un dataframe de Pandas Los dataframes de Pandas son unas estructuras de datos diseñadas especialmente para facilitar el trabajo del analista y científico de datos. Permiten trabajar con datos de todo tipo (enteros, decimales, cadenas de texto) dispuestos en forma de tablas, incluso con series temporales. También se pueden usar como vectores y matrices, lo que permite realizar operaciones de álgebra lineal, como la multiplicación de matrices. Otro aspecto importante de pandas.read_csv() es que puede ejecutarse con la opción chunksize, que, en lugar de cargar el fichero de datos completo en memoria, permite hacerlo en fragmentos (chunks) de tamaño configurable, mejorando mucho la eficiencia en la carga de datos de ficheros muy grandes. Veamos un ejemplo. 4. Desde URL. Otra de las formas más habituales de cargar un dataset es directamente desde la URL donde se alojan los datos. Este método es perfectamente compatible con los anteriores. Por ejemplo, podemos modificar el ejemplo anterior, para que cargue los datos desde su ubicación original. 5. Desde otras librerías. Cuando lo que queremos es hacer una prueba rápida, nos pueden resultar muy útiles los datasets que traen “de serie” algunos de los paquetes más populares como statsmodels, scikit-learn, o seaborn. Se trata de conjuntos de datos de todo tipo “para hacer pruebas” que se conocen como “Toy datasets” y de los que hablaremos con más detalle en el próximo post. En el experimento que hicimos para explicar en qué consiste la regresión logística paso a paso, usamos uno de estos conjuntos de datos. En concreto, el dataset “affairs”, de statsmodels. En este post, podéis ver cómo se cargan los datos desde la librería y, si os animáis, seguir el ejemplo completo, explicado paso a paso. Especial San Valentin: ¿Podemos predecir la infidelidad con Inteligencia Artificial? Como veis, hay muchas formas distintas de cargar los datos. Aunque, según nos resulte más sencillo y cómodo, tendremos cada uno nuestra “favorita”, es bueno conocer las otras alternativas por si nos surge algún caso en el que resulte conveniente cambiar de método. ¿Cuál es la tuya? Para mantenerte al día con LUCA visita nuestra página web, suscríbete a LUCA Data Speaks o síguenos en Twitter, LinkedIn y YouTube. Garantizando la efectividad de las campañas: una necesidad de todos los anunciantesLUCA Talk: Usos de GANs y Autoencoders en Ciberseguridad
LUCA Una solución para adaptar la flota de vehículos frente a la COVID-19 y la tormenta Filomena La movilidad es un aspecto clave tanto en el día a día de las ciudades como en las situaciones excepcionales que hemos experimentado en el último año por la...
Francisco Javier Viñas Plaza El gobierno del almacenamiento como palanca de la innovación La Oficina de Dato es un agente de cambio e innovación en una organización. Convierte el gobierno del almacenamiento en una auténtica palanca de la innovación. Veamos el por...
Paloma Recuero de los Santos ENIA, la nueva Estrategia Nacional sobre IA Desde el pasado 2 de diciembre, España cuenta con una nueva Estrategia Nacional de Inteligencia Artificial, ENIA, dotada con un presupuesto de 600 millones de euros para medidas relacionadas...
LUCA LUCA Talk: Blockchain para garantizar la trazabilidad de vacunas FORMATO: Charla de 30 minutos + Q&A de 10 minutosCUÁNDO: 20 de enero, 16:00 h (CET)CÓMO: Inscripción gratuita en eventbrite Trazabilidad es una de las características que vienen a nuestra...
Enrique Blanco Clustering de series temporales con Python La proliferación y la ubicuidad de los datos con dependencia temporal en un amplio abanico de disciplinas genera un interés sustancial en el análisis y la extracción de series...
LUCA Fleet Optimise en la era Post-COVID La llegada de la COVID-19 ha alterado el mundo tal y como lo conocíamos y está obligando a muchas empresas a evolucionar digitalmente para adaptarse a las nuevas necesidades...