1 - ¿Qué es NumPy?
Lección 1 del curso NumPy para Ciencia de Datos y Machine Learning.
Tabla de contenido
Introducción
En esta primera lección del curso veremos qué es NumPy, por qué resulta esencial aprender a usar esta librería para desarrollar cualquier proyecto Ciencia de Datos y Machine Learning y por último veremos cómo se relaciona con otras librerías como Pandas, Matplotlib y Scikit-Learn, entre otras.
Video
En el canal de YouTube puedes ver el video completo de esta primera lección:
¿Qué es NumPy?
Partamos de la definición disponible en el sitio web oficial de la librería:
“Numpy (Numerical Python) es el paquete fundamental para la computación científica en Python. Es una librería que permite la manipulación de arreglos multidimensionales, así como rutinas para realizar operaciones sobre dichos arreglos de forma rápida y eficiente, incluyendo operaciones matemáticas, lógicas, de ordenamiento y selección, transformadas de Fourier, álgebra lineal, operaciones estadísticas básicas y generación de números aleatorios, entre otras.”
Y desglosemos ahora algunos elementos esenciales de esta definición y que resultan relevantes para la Ciencia de Datos y el Machine Learning:
- “Computación científica” se refiere a la capacidad de implementar programas de computador que permitan realizar cálculos y operaciones complejas, precisamente como las requeridas en muchos algoritmos y métodos de la Ciencia de Datos y del Machine Learning.
- “arreglos multidimensionales” hace referencia a que NumPy está diseñado para operar sobre los tres principales tipos de datos usados para el almacenamiento de la información en proyectos de Ciencia de Datos y Machine Learning: los vectores, las matrices y los tensores.
- “realizar operaciones sobre dichos arreglos de forma rápida y eficiente” nos indica que NumPy está diseñado específicamente para realizar múltiples operaciones sobre arreglos aprovechando al máximo los recursos computacionales (lo cual no se lograría usando los tipos de datos disponibles en Python y en su librería estándar)
- Y finalmente, cabe resaltar que además de operaciones matemáticas básicas, con NumPy resulta posible manipular arreglos (“ordenamiento y selección”) y realizar cálculos complejos usando métodos del álgebra lineal y de la estadística.
¿Por qué es importante NumPy en la Ciencia de Datos y el Machine Learning?
Teniendo claro qué es NumPy podemos ahora ver la importancia de aprenderlo para el desarrollo de proyectos en Ciencia de Datos y Machine Learning.
Esencialmente existen dos razones que explican esta importancia:
-
Porque en Ciencia de Datos y Machine Learning prácticamente todos los datos que procesamos son numéricos y vienen almacenados en forma de arreglos, lo que hace ideal el uso de NumPy para procesar estos datos de manera eficiente.
-
Porque en la actualidad Python es el lenguaje de programación más usado para el desarrollo de proyectos en Ciencia de Datos y Machine Learning, pero a pesar de esto Python no cuenta con tipos de datos específicos para el procesamiento eficiente de arreglos. NumPy, por ser una librería construida sobre Python, agrega precisamente esta funcionalidad al lenguaje de programación.
NumPy y su relación con Python y otras librerías de Ciencia de Datos y Machine Learning
Para finalizar esta primera lección veamos la relación que guarda NumPy con el lenguaje de programación Python y con otras librerías usadas convencionalmente en Ciencia de Datos y Machine Learning.
Como lo mencionamos hace un momento NumPy está construída sobre Python. Sin embargo, en el caso de Python se trata de un lenguaje de programación de propósito general y por tanto, a pesar de que permite realizar el procesamiento de arreglos, no lo hace de manera eficiente, como sí ocurre con NumPy.
Por otra parte, el hecho de que los arreglos multidimensionales sean el tipo de dato usado en Ciencia de Datos y Machine Learning, ha hecho que NumPy sea la base de librerías especializadas como:
- Pandas
- Matplotlib
- Scikit-Learn
- TensorFlow y Pytorch
todas ellas dependientes precisamente de NumPy y que basan su principio de funcionamiento en el procesamiento de arreglos.
Conclusión
Muy bien, ya tenemos una idea clara de lo que es NumPy y de su utilidad como librería para el procesamiento de los arreglos multidimensionales que usamos en Ciencia de Datos y Machine Learning.
Así que en la próxima lección ya entraremos por completo en el componente práctico de este curso y comenzaremos viendo cómo instalar NumPy en nuestros computadores personales.