octubre 25, 2021

12 operaciones NumPy para principiantes

NumPy, que significa Numerical Python, es una biblioteca de Python que se utiliza principalmente para trabajar con matrices y para realizar una amplia variedad de operaciones matemáticas en ellas. Es la biblioteca principal para la computación científica en Python. NumPy se usa a menudo con otras bibliotecas de Python relacionadas con la ciencia de datos, como SciPy, Pandas y Matplotlib.

En este artículo, aprenderá a realizar 12 operaciones básicas con NumPy.

Usando estos ejemplos de NumPy

Puede ejecutar los ejemplos de este artículo ingresando el código directamente en el intérprete de Python. Ejecútelo de forma interactiva, desde la línea de comandos, para hacer esto.

También puede acceder a un archivo Python Notebook que contiene el código fuente completo desde este repositorio de GitHub.

1. Cómo importar NumPy como np e imprimir el número de versión

Tienes que usar el importar palabra clave para importar cualquier biblioteca a Python. NumPy normalmente se importa bajo el notario público alias. Con este enfoque, puede referirse al paquete NumPy como notario público en lugar de insensible.

import numpy as np
print(np.__version__)

Producción:

1.20.1

2. Cómo crear un objeto ndarray NumPy

El objeto de matriz en NumPy se llama ndarray. Puedes crear el NumPy ndarray objeto usando el Vector() método. los Vector() acepta una lista, tupla o un objeto similar a una matriz.

Usando una tupla para crear una matriz NumPy

arrObj = np.array((23, 32, 65, 85))
arrObj

Producción:

array([23, 32, 65, 85])

Usando una lista para crear una matriz NumPy

arrObj = np.array([43, 23, 75, 15])
arrObj

Producción:

array([43, 23, 75, 15])

3. Cómo crear matrices NumPy 0D, 1D, 2D, 3D y N-dimensional

Matriz 0D

Cada elemento de una matriz es una matriz 0D.

arrObj = np.array(21)
arrObj

Producción:

array(21)

Matriz 1D

Las matrices que tienen matrices 0D como elementos se denominan matrices 1D.

arrObj = np.array([43, 23, 75, 15])
arrObj

Producción:

array([43, 23, 75, 15])

Matriz 2D

Las matrices que tienen matrices 1D como elementos se denominan matrices 2D.

arrObj = np.array([[12, 43, 21], [67, 32, 98]])
arrObj

Producción:

array([[12, 43, 21],
[67, 32, 98]])

Matriz 3D

Las matrices que tienen matrices 2D (matrices) como elementos se denominan matrices 3D.

arrObj = np.array([[[23, 45, 22], [45, 76, 23]], [[67, 23, 56], [12, 76, 63]]])
arrObj

Producción:

array([[[23, 45, 22],
[45, 76, 23]],[[67, 23, 56],
[12, 76, 63]]])

Matrices N-dimensionales

Puede crear una matriz de cualquier tamaño utilizando el ndmin discusión.

arrObj = np.array([23, 22, 65, 44], ndmin=5)
arrObj

Producción:

array([[[[[23, 22, 65, 44]]]]])

4. Cómo comprobar el tamaño de una matriz

Puede encontrar el tamaño de una matriz utilizando el ndimi atributo.

arrObj1 = np.array(21)
arrObj2 = np.array([43, 23, 75, 15])
arrObj3 = np.array([[12, 43, 21], [67, 32, 98]])
arrObj4 = np.array([[[23, 45, 22], [45, 76, 23]], [[67, 23, 56], [12, 76, 63]]])
print(arrObj1.ndim)
print(arrObj2.ndim)
print(arrObj3.ndim)
print(arrObj4.ndim)

Producción:

0
1
2
3

5. Cómo acceder a elementos de matriz 1D, 2D y 3D

Se puede acceder a un elemento de la matriz utilizando su número de índice. Para matrices 2D y 3D, se deben utilizar números enteros separados por comas que representen el índice de cada dimensión.

arrObj1 = np.array([43, 23, 75, 15])
arrObj2 = np.array([[12, 43, 21], [67, 32, 98]])
arrObj3 = np.array([[[23, 45, 22], [45, 76, 23]], [[67, 23, 56], [12, 76, 63]]])
print(arrObj1[2])
print(arrObj2[0, 2])
print(arrObj3[0, 1, 2])

Producción:

75
21
23

Nota: Las matrices NumPy también admiten la indexación negativa.

Relacionado: ¿Por qué Python es el lenguaje de programación del futuro?

6. Cómo verificar el tipo de datos del objeto de matriz NumPy

Puede verificar el tipo de datos del objeto de matriz NumPy usando el dtype propiedad.

arrObj1 = np.array([1, 2, 3, 4])
arrObj2 = np.array([1.3, 6.8, 3.5, 9.2])
arrObj3 = np.array(['Welcome', 'to', 'MUO'])
print(arrObj1.dtype)
print(arrObj2.dtype)
print(arrObj3.dtype)

Producción:

int32
float64
<U7

Nota:

NumPy usa los siguientes caracteres para representar tipos de datos incrustados:

  • i – entero (con signo)

  • b – booleano

  • O – objeto

  • S – cuerda

  • u – entero sin signo

  • f – flotar

  • c – flotador complejo

  • m – timedelta

  • M – fecha y hora

  • U – cadena Unicode

  • V – datos brutos (en blanco)

7. Cómo cambiar el tipo de datos de una matriz NumPy

Puede cambiar el tipo de datos de una matriz NumPy usando el astype (tipo_datos) método. Este método toma el tipo de datos como parámetro y crea una nueva copia de la matriz. Puede especificar el tipo de datos utilizando caracteres como «b» para booleano, «i» para entero, «f» para flotante, etc.

Conversión de una matriz de enteros en una matriz flotante

arrObj = np.array([43, 23, 75, 15])
floatArr = arrObj.astype('f')
floatArr

Producción:

array([43., 23., 75., 15.], dtype=float32)

Conversión de una matriz flotante en una matriz de enteros

arrObj = np.array([1.3, 6.8, 3.5, 9.2])
intArr = arrObj.astype('i')
intArr

Producción:

array([1, 6, 3, 9], dtype=int32)

Relacionado: ideas de proyectos de Python adecuadas para principiantes

8. Cómo copiar una matriz NumPy a otra matriz

Puede copiar una matriz NumPy a otra matriz usando el np.copy () función. Esta función devuelve una copia de la matriz del objeto dado.

oldArr = np.array([43, 23, 75, 15])
newArr = np.copy(oldArr)
newArr

Producción:

array([43, 23, 75, 15])

9. Cómo encontrar la forma de una matriz NumPy

La forma de una matriz se refiere al número de elementos en cada dimensión. Puede encontrar la forma de una matriz usando el formulario atributo. Devuelve una tupla cuyos elementos dan las longitudes de las dimensiones de la matriz correspondiente.

arrObj = np.array([[12, 43, 21], [67, 32, 98]])
arrObj.shape

Producción:

(2, 3)

Relacionado: Cómo crear API en Python: Frameworks más populares

10. Cómo remodelar una matriz NumPy

Reformar una matriz significa cambiar su forma. Tenga en cuenta que no puede remodelar una matriz en una forma arbitraria. El número de elementos necesarios para remodelar debe ser el mismo en ambas formas.

arrObj = np.array([43, 23, 75, 15, 34, 45])
reshapedArr = arrObj.reshape(2, 3)
reshapedArr

Producción:

array([[43, 23, 75],
[15, 34, 45]])

En el ejemplo anterior, una matriz 1D se transforma en una matriz 2D.

11. Cómo aplanar una matriz NumPy

Aplanar una matriz significa convertir una matriz multidimensional en una matriz 1D. Puede aplanar una matriz usando remodelar (-1).

arrObj = np.array([[12, 43, 21], [67, 32, 98]])
flattenedArr = arrObj.reshape(-1)
flattenedArr

Producción:

array([12, 43, 21, 67, 32, 98])

Nota: También puede aplanar una matriz utilizando otros métodos como numpy.ndarray.flatten () Y numpy.ravel ().

12. Cómo ordenar una matriz NumPy

Puede ordenar una matriz NumPy usando el numpy.sort () función.

Clasificación de matrices 1D de enteros

arrObj = np.array([43, 23, 75, 15])
np.sort(arrObj)

Producción:

array([15, 23, 43, 75])

Clasificación de una matriz de cadenas 1D

arrObj = np.array(["Python", "JavaScript", "Solidity", "Golang"])
np.sort(arrObj)

Producción:

array(['Golang', 'JavaScript', 'Python', 'Solidity'], dtype='<U10')

Clasificación de matrices 2D de números enteros

arrObj = np.array([[12, 43, 21], [67, 32, 98]])
np.sort(arrObj)

Producción:

array([[12, 21, 43], [32, 67, 98]])

Haga que su código sea robusto mediante el uso de métodos y funciones integrados

Python es uno de los lenguajes de programación más populares. Se utiliza en varios dominios, como el desarrollo web, aplicaciones científicas y numéricas, desarrollo de software y desarrollo de juegos. Siempre es útil conocer los métodos y funciones integrados en Python. Pueden acortar el código y aumentar su eficiencia.


Mano sosteniendo un libro de Python

20 funciones de Python que debes conocer

La biblioteca estándar de Python contiene muchas funciones para ayudarlo con sus tareas de programación. Descubra los más útiles y cree el código más robusto.

Leer siguiente


Sobre el Autor

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *