Introducción a la computación


Introducción a la Computación
Alumno: Edgar Alonsso Huayta Ttito
Profesor: Carlos Alberto Janjachi
FIIS-UNI
Librería Numpy

NumPy es, al igual que Pandas, Matplotlib o Scikit-Learn, uno de los paquetes que no puedes perderte cuando estás aprendiendo Machine Learning, principalmente porque esta librería proporciona una estructura de datos de matriz que tiene algunos beneficios sobre las listas regulares de Python. Algunos de estos beneficios son: ser más compacto, acceder más rápido a leer y escribir artículos, ser más conveniente y más eficiente.
NumPy, que significa "Numerical Python", es una librería que proporciona soporte para arreglos multidimensionales y matrices, junto con funciones matemáticas de alto nivel para operar en estos arreglos. Fue diseñada para ser eficiente y fácil de usar, y es esencial en muchos campos, como la ciencia de datos, la inteligencia artificial y la investigación científica.

Características clave:
-
Arreglos N-dimensionales: NumPy ofrece un objeto de arreglo multidimensional llamado numpy.ndarray, que permite representar datos en forma de matrices N-dimensionales.
-
Operaciones matriciales y funciones universales (ufuncs): NumPy proporciona funciones para realizar operaciones matriciales, como la multiplicación de matrices, suma, resta, etc. Las funciones universales (ufuncs) permiten aplicar operaciones elemento a elemento a los arreglos sin la necesidad de bucles explícitos.
-
Broadcasting: NumPy permite realizar operaciones entre arreglos de diferentes formas y tamaños de manera eficiente mediante un mecanismo llamado "broadcasting". Esto simplifica la escritura de código y mejora el rendimiento.
-
Funciones matemáticas y estadísticas: Ofrece un amplio conjunto de funciones para realizar operaciones matemáticas y estadísticas en arreglos, como mean, std, sum, sin, cos, entre otras.
-
Integración con otras librerías: NumPy se integra bien con otras librerías de Python, como SciPy (librería de algoritmos científicos), pandas (librería de manipulación y análisis de datos), y matplotlib (librería de visualización).
Ejemplo 1: (Creación de arreglos)
import numpy as np
# Crear un arreglo unidimensional
arr_1d = np.array([1, 2, 3, 4, 5])
# Crear un arreglo bidimensional
arr_2d = np.array([[1, 2, 3], [4, 5, 6]])
# Crear un arreglo de ceros
zeros_arr = np.zeros((3, 3))
# Crear un arreglo de unos
ones_arr = np.ones((2, 4))
# Crear un arreglo con valores espaciados uniformemente
linspace_arr = np.linspace(0, 1, 5)
# Crear un arreglo con valores aleatorios
random_arr = np.random.rand(3, 3)
print(arr_1d)
print(arr_2d)
print(zeros_arr)
print(ones_arr)
print(linspace_arr)
print(random_arr)


Ejemplo 3: (Funciones Matemáticas y estadísticas)
import numpy as np
# Crear un arreglo
arr = np.array([[1, 2, 3], [4, 5, 6]])
# Calcular la media y la desviación estándar
mean_val = np.mean(arr)
std_dev = np.std(arr)
# Aplicar funciones trigonométricas
sin_arr = np.sin(arr)
cos_arr = np.cos(arr)
print(mean_val)
print(std_dev)
print(sin_arr)
print(cos_arr)
Ejemplo 2: (Operaciones Matriciales)
import numpy as np
# Crear dos arreglos
arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6], [7, 8]])
# Multiplicación de matrices
mat_mul = np.dot(arr1, arr2)
# Suma de matrices
mat_sum = np.add(arr1, arr2)
# Transposición de matriz
mat_transpose = np.transpose(arr1)
print(mat_mul)
print(mat_sum)
print(mat_transpose)
