0% encontró este documento útil (0 votos)
3 vistas

Modulo_numpy

Cargado por

devmondidev
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
3 vistas

Modulo_numpy

Cargado por

devmondidev
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 7

NUMPY

Numerical Python
Módulo Numpy
● Es el paquete de Python más fundamental para la computación científica.
● Es el estándar para trabajar con datos numéricos en Python.
● Muchas otras bibliotecas y módulos de Python como Pandas, SciPy, Matplotlib, scikit-learn,
scikit-image usan NumPy.
● Contiene, entre otras cosas:
○ Arreglos y matrices (array)
○ Funciones matemáticas sofisticadas
○ Herramientas de álgebra lineal
○ Transformada de Fourier
○ Generadores de números aleatorios
○ Herramientas para integrar Python con C/C++ y Fortran
Array
● En computación científica tratamos con grandes volúmenes de datos
● Vimos que una lista es un recurso que puede almacenar un conjunto de datos grande
● Pero… para conjuntos muy grandes, la lista es muy lenta!
● Existe otro tipo de contenedor, el Array, definido en el módulo numpy:
○ Es mucho más rápido, especialmente si contiene muchos números
○ Ya tiene muchas funciones/métodos matemáticos aplicados a los arrays que permiten evitar
hacer loops sobre elementos.
○ Array de 1-dimensión es un vector y de 2-dimensiones es una matriz.
○ Utilizado en el módulo de visualización de gráficos matplotlib

● Dos diferencias importantes entre Array y List:


○ Todos los elementos deben ser del mismo tipo (ya sea float, int...)
○ El número de elementos debe conocerse en la creación, no puede ser modificado más tarde
(las listas fueron creadas para adicionar y remover elementos)
○ Las operaciones matemáticas sobre vectores de numpy son más rápidas que sobre listas.
Array
● Creación de un array:
○ A partir de una lista o una tupla
○ Podemos generar un array de ceros (int o float) o vacio
○ Podemos generar arrays usando linspace o arange

● Dimensión de un array:
○ 1 dimensión: vector
○ 2 dimensiones: matriz
○ …
● Para saber la dimensión de un array podemos usar shape y vamos a tener una tupla con la
información del tamaño en cada dimensión.
● Llamamos de axes (ejes) a cada dimensión
Ejes en un array 6
axis = 0
5 dimensión = 6
● Vector 4
a = np.array([1, 2, 3, 4, 5, 6]) 3
2
● Matriz 1

a = np.array([[1, 2, 3, 4, 5, 6],[11, 12, 13, 14, 15, 16]])

1 2 3 4 5 6 axis = 0 axis = 1
11 12 13 14 15 16 dimensión = 2 dimensión = 6

● n-dimensiones

...
Operaciones con Arrays
● Como con las listas, podemos hacer operaciones con los elementos individuales:

x = a[2] ** 2 - 2 * a[3]/y donde a es un array

● Diferentemente de las listas podemos hacer operaciones en todo el array de una sola vez
(vectorizing). De esta forma evitamos loops sobre todos los elementos del array teniendo
una forma más simple y de mayor velocidad de ejecución.
● La regla es hacer la misma operación en todos los elementos del array.
Copia de Arrays
● Atención: que pasa cuando tenemos un array a y hacemos: b = a

Aquí no estamos creando una copia de a en b, pues al modificar a, modificamos b. Lo que hace b = a es
simplemente asociar un nuevo nombre a la misma región de la memoria donde está guardado a.

● Para hacer una copia debemos usar copy:

También podría gustarte