12 - Funciones avanzadas en NumPy

Lección 12 del curso NumPy para Ciencia de Datos y Machine Learning.

Introducción

En la lección anterior hablamos de los conceptos de copias shallow y deep que aparecen al momento de manipular arreglos de NumPy.

Así que hasta este punto ya tenemos prácticamente todas las herramientas para la creación y manipulación de arreglos en NumPy que resultarán muy útiles en nuestros proyectos de Ciencia de Datos y Machine Learning.

Entonces, para cerrar este este tercer módulo del curso veremos una serie de funciones avanzadas que igualmente encontraremos útiles al momento de desarrollar nuestros proyectos. En particular, hablaremos de la concatenación de arreglos y de las funciones where y random.seed.

Contenido exclusivo suscriptores

Suscríbete y accede al código fuente y al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online

Concatenación de arreglos

Podemos tomar arreglos del mismo tamaño y “apilarlos” (horizontal o verticalmente) para generar nuevos arreglos.

Para esto podemos usar las funciones hstack (apilar horizontalmente), vstack (apilar verticalmente) o concatenate (concatenar).

La función where

Muy usada en Ciencia de Datos y Machine Learning cuando estamos realizando limpieza de datos o cuando los estamos pre-procesando para introducirlos a un modelo.

La función where permite seleccionar los elementos de un arreglo basado en una condición.

Esta función tiene diferentes formas de uso:

  1. Forma de uso 1: buscar o extraer elementos del arreglo con base en una condición. Para ello usamos la sintaxis np.where(condicion)
  2. Forma de uso 2: buscar y reemplazar elementos del arreglo con base en una condición usando la sintaxis np.where(condicion,x,y)

La función np.random.seed

Muy usada en Machine Learning. Siempre que implementamos un modelo debemos inicializar sus parámetros a valores aleatorios, pero la idea es que cada vez que ejecutemos el código estos parámetros (a pesar de ser aleatorios) se inicialicen siempre a los mismos valores. Esto garantiza la repetibilidad del entrenamiento.

np.random.seed permite fijar la semilla del generador de números aleatorios de tal manera que cada vez que ejecutemos nuestro código obtengamos los mismos números aleatorios.

Contenido exclusivo suscriptores

Recuerda suscribirte para acceder al código fuente y al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online

Conclusión

Muy bien, en este punto tenemos ya todas las herramientas de NumPy que resultarán útiles en el desarrollo de diferentes proyectos de Ciencia de Datos y Machine Learning.

Lo único que nos resta es poner en práctica varias de estas herramientas en un proyecto. Así que en el último módulo del curso veremos como llevar a cabo la limpieza, el análisis y la clasificación de datos haciendo uso de NumPy, una de las fases esenciales de cualquier proyecto de Ciencia de Datos y Machine Learning.

Ver todas las lecciones de este curso