Numpy en Python

Python Numpy : En este tutorial, vamos a aprender sobre la Numpy en lenguaje de programación Python que es un class procesamiento de matriz. Aquí, también vamos a aprender a instalar numpy, matrices, métodos, etc.

¿Cuál es Numpy en Python?

Numpy es un package procesamiento de matriz que proporciona alto rendimiento matriz multidimensional objeto y utilidades para trabajar con arrays. Es un básico package computación científica package con Python. Es una biblioteca de álgebra lineal y es muy importante la ciencia de datos for con Python ya que casi todas las bibliotecas de la pyData ecosistema confían en Numpy como uno de sus bloques de construcción for. Es muy rápido, ya que tiene enlaces a C.

Algunas de las muchas características, proporcionadas por numpy son como siempre,

  1. N-dimensional array objeto
  2. funciones de Radiodifusión
  3. Utilidades main integración con capacidades de C / C ++
  4. álgebra lineal práctica y de números aleatorios

Instalación Numpy

1) Utilizando pip

    pip install numpy

salida Instalación

pip install numpy
Collecting numpy
Downloading https://files.pythonhosted.org/packages/60/9a/a6b3168f2194fb468dcc4cf54c8344d1f514935006c3347ede198e968cb0/numpy-1.17.4-cp37-cp37m-macosx_10_9_x86_64.whl (15.1MB)
100% |████████████████████████████████| 15.1MB 1.3MB/s
Installing collected packages: numpy
Successfully installed numpy-1.17.4

2) Utilizando Anaconda

    conda install numpy

Arrays en Numpy

de Numpy objeto es la matriz multidimensional homogénea. arrays NumPy dos tipos: vectores y matrices . vectores son estrictamente arrays 1-D y matrices son 2-d.

dimensiones en NumPy se conocen como ejes. El número de ejes es de rango. Los siguientes ejemplos se enumeran los atributos más importantes de un objeto ndarray.

Ejemplo:

# importing package
import numpy as np
# creating array
arr = np.array([[11,12,13],[14,15,16]])
print("Array is of type {}".format(type(arr)))
print("No. of dimensions {}".format(arr.ndim))
print("shape of array:{}".format(arr.shape))
print("size of array:{}".format(arr.size))
print("type of elements in the array:{}".format(arr.dtype))

salida

Array is of type <class 'numpy.ndarray'>
No. of dimensions 2
shape of array:(2, 3)
size of array:6
type of elements in the array:int64

Creación de una matriz numpy

Creación de una matriz numpy es posible en múltiples formas. ejemplo for, una lista o una tupla puede lanzarse a una matriz numpy usando el. array () método (como se explica en el ejemplo anterior). La matriz transforma una secuencia de la secuencia en 2-D arrays, secuencias de secuencias en una matriz de 3-d y así sucesivamente.

Para crear secuencias de números, NumPy proporciona una función llamada arange que devuelve arrays en lugar de listas.

Sintaxis:

    # returns evenly spaced values within a given interval. 
arange([start,] stop [,step], dtype=None)

Ejemplo:

x = np.arange(10,30,5)
print(x)
# Ouput: [10 15 20 25]

Los ceros de la función crear una matriz llena de ceros, los de función crear una matriz llena de unos, y la función de vacío crea una matriz cuya inicial contenido es aleatorio y depende del estado de la memoria. Por main, la dtype de la matriz creada es float64.

Ejemplo:

# importing package
import numpy as np
x = np.zeros((3,4))
print("np.zeros((3,4))...")
print(x)
x = np.ones((3,4))
print("np.ones((3,4))...")
print(x)
x = np.empty((3,4))
print("np.empty((3,4))...")
print(x)
x = np.empty((1,4))
print("np.empty((1,4))...")
print(x)

salida

np.zeros((3,4))...
[[0. 0. 0. 0.]
[0. 0. 0. 0.]
[0. 0. 0. 0.]]
np.ones((3,4))...
[[1. 1. 1. 1.]
[1. 1. 1. 1.]
[1. 1. 1. 1.]]
np.empty((3,4))...
[[1. 1. 1. 1.]
[1. 1. 1. 1.]
[1. 1. 1. 1.]]
np.empty((1,4))...
[[1.63892563e-316 0.00000000e+000 2.11026305e-312 2.56761491e-312]]

funciones NumPy

Algunos más función disponible con NumPy para crear una matriz son,

1) linspace ()

devuelve un número uniformemente espaciados en un intervalo especificado.

Sintaxis:

    linspace(start, stop, num=50, endpoint=True, restep=False, dtype=None) 

Ejemplo:

# importing package
import numpy as np
x = np.linspace(1,3,num=10)
print(x)

salida

[1.         1.22222222 1.44444444 1.66666667 1.88888889 2.11111111
2.33333333 2.55555556 2.77777778 3. ]

2) ojo ()

Se devuelve una matriz 2-D con los de la diagonal y ceros en el resto.

Sintaxis:

    eye(N, M=None, k=0, dtype=<class 'float'>, order='C')

Ejemplo:

# importing package
import numpy as np
x = np.eye(4)
print(x)

salida

[[1. 0. 0. 0.] [0. 1. 0. 0.]
[0. 0. 1. 0.]
[0. 0. 0. 1.]]

3) random ()

Se crea una matriz con números aleatorios

Ejemplo:

# importing package
import numpy as np
x = np.random.rand(5)
print("np.random.rand(5)...")
print(x)
x = np.random.rand(5,1)
print("np.random.rand(5,1)...")
print(x)
x = np.random.rand(5,1,3)
print("np.random.rand(5,1,3)...")
print(x)
# returns a random number
x = np.random.randn()
print("np.random.randn()...")
print(x)
# returns a 2-D array with random numbers
x = np.random.randn(2,3)
print("np.random.randn(2,3)...")
print(x)
x = np.random.randint(3)
print("np.random.randint(3)...")
print(x)
# returns a random number in between low and high
x = np.random.randint(3,100)
print("np.random.randint(3,100)...")
print(x)
# returns an array of random numbers of length 34
x = np.random.randint(3,100,34)
print("np.random.randint(3,100,34)...")
print(x)

salida

np.random.rand(5)...[0.87417146 0.77399086 0.40012698 0.37192848 0.98260636]
np.random.rand(5,1)...
[[0.712829 ]
[0.65959462]
[0.41553044]
[0.30583293]
[0.83997539]]
np.random.rand(5,1,3)...
[[[0.75920149 0.54824968 0.0547891 ]]
[[0.70911911 0.16475541 0.5350475 ]]
[[0.74052103 0.4782701 0.2682752 ]]
[[0.76906319 0.02881364 0.83366651]]
[[0.79607073 0.91568043 0.7238144 ]]]
np.random.randn()...
-0.6793254693909823
np.random.randn(2,3)...
[[ 0.66683143 0.44936287 -0.41531392]
[ 1.86320357 0.76638331 -1.92146833]]
np.random.randint(3)...
1
np.random.randint(3,100)...
53
np.random.randint(3,100,34)...
[43 92 76 39 78 83 89 87 96 59 32 74 31 77 56 53 18 45 78 21 46 10 25 86
64 29 49 4 18 19 90 17 62 29]

4) método Reshape (manipulación de la forma)

una matriz tiene una forma dada por el número de elementos a lo largo de cada eje,

# importing package
import numpy as np
x = np.floor(10*np.random.random((3,4)))
print(x)
print(x.shape)

salida

[[0. 2. 9. 4.] 
[0. 4. 1. 7.]
[9. 7. 6. 2.]]
(3, 4)

La forma de una matriz puede ser cambios con varios comandos. Sin embargo, los comandos de forma todas las matrices modificadas, pero no cambian la matriz original.

# importing package
import numpy as np
x = np.floor(10*np.random.random((3,4)))
print(x)
# returns the array, flattened
print("x.ravel()...")
print(x.ravel())
# returns the array with modified shape
print("x.reshape(6,2)...")
print(x.reshape(6,2))
# returns the array , transposed
print("x.T...")
print(x.T)
print("x.T.shape...")
print(x.T.shape)
print("x.shape...")
print(x.shape)

salida

[[3. 1. 0. 6.] [3. 1. 2. 4.]
[7. 0. 0. 1.]]
x.ravel()...
[3. 1. 0. 6. 3. 1. 2. 4. 7. 0. 0. 1.]
x.reshape(6,2)...
[[3. 1.]
[0. 6.]
[3. 1.]
[2. 4.]
[7. 0.]
[0. 1.]]
x.T...
[[3. 3. 7.] [1. 1. 0.]
[0. 2. 0.]
[6. 4. 1.]]
x.T.shape...
(4, 3)
x.shape...
(3, 4)

métodos adicionales

# importing package
import numpy as np
x = np.floor(10*np.random.random((3,4)))
print(x)
#Return the maximum value in an array
print("x.max():", x.max())
# Return the minimum value in a array
print("x.min():", x.min())
# Return the index of max value in an array
print("x.argmax():", x.argmax())
# Return the index of min value in an array
print("x.argmin():", x.argmin())

salida

[[4. 0. 5. 2.] [8. 5. 9. 7.]
[9. 3. 5. 5.]]
x.max(): 9.0
x.min(): 0.0
x.argmax(): 6
x.argmin(): 1


Deja un comentario

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