Métodos numpy
Aquí tienes un listado de algunos de los principales métodos de NumPy, junto con una explicación detallada y ejemplos para cada uno de ellos:
1. Creación de Arrays
np.array()
- Descripción: Crea un array a partir de una lista o una tupla.
- Ejemplo:
import numpy as np lista = [1, 2, 3, 4] array = np.array(lista) print(array) # Output: [1 2 3 4]
np.zeros()
- Descripción: Crea un array de ceros con una forma específica.
- Ejemplo:
zeros_array = np.zeros((3, 4)) # 3 filas y 4 columnas print(zeros_array) # Output: # [[0. 0. 0. 0.] # [0. 0. 0. 0.] # [0. 0. 0. 0.]]
np.ones()
- Descripción: Crea un array de unos con una forma específica.
- Ejemplo:
ones_array = np.ones((2, 3)) # 2 filas y 3 columnas print(ones_array) # Output: # [[1. 1. 1.] # [1. 1. 1.]]
np.arange()
- Descripción: Crea un array con un rango de valores.
- Ejemplo:
range_array = np.arange(0, 10, 2) # De 0 a 10 con pasos de 2 print(range_array) # Output: [0 2 4 6 8]
np.linspace()
- Descripción: Crea un array de números espaciados uniformemente entre dos valores.
- Ejemplo:
linspace_array = np.linspace(0, 1, 5) # 5 números entre 0 y 1 print(linspace_array) # Output: [0. 0.25 0.5 0.75 1. ]
2. Manipulación de Arrays
np.reshape()
- Descripción: Cambia la forma de un array sin cambiar sus datos.
- Ejemplo:
original_array = np.arange(12) # [0, 1, 2, ..., 11] reshaped_array = original_array.reshape((3, 4)) # 3 filas, 4 columnas print(reshaped_array) # Output: # [[ 0 1 2 3] # [ 4 5 6 7] # [ 8 9 10 11]]
np.concatenate()
- Descripción: Concatena dos o más arrays a lo largo de un eje específico.
- Ejemplo:
array1 = np.array([1, 2, 3]) array2 = np.array([4, 5, 6]) concatenated_array = np.concatenate((array1, array2)) print(concatenated_array) # Output: [1 2 3 4 5 6]
np.split()
- Descripción: Divide un array en múltiples sub-arrays.
- Ejemplo:
array_to_split = np.array([1, 2, 3, 4, 5, 6]) split_arrays = np.split(array_to_split, 3) # Divide en 3 partes print(split_arrays) # Output: [array([1, 2]), array([3, 4]), array([5, 6])]
3. Operaciones Matemáticas
np.add()
, np.subtract()
, np.multiply()
, np.divide()
- Descripción: Realizan operaciones aritméticas element-wise entre arrays.
- Ejemplo:
a = np.array([1, 2, 3]) b = np.array([4, 5, 6]) print(np.add(a, b)) # Output: [5 7 9] print(np.subtract(a, b)) # Output: [-3 -3 -3] print(np.multiply(a, b)) # Output: [4 10 18] print(np.divide(a, b)) # Output: [0.25 0.4 0.5 ]
np.dot()
- Descripción: Calcula el producto punto de dos arrays.
- Ejemplo:
x = np.array([1, 2]) y = np.array([3, 4]) dot_product = np.dot(x, y) print(dot_product) # Output: 11
np.sum()
- Descripción: Calcula la suma de los elementos a lo largo de un eje.
- Ejemplo:
array_sum = np.array([[1, 2], [3, 4]]) print(np.sum(array_sum)) # Output: 10 print(np.sum(array_sum, axis=0)) # Suma por columnas: Output: [4 6]
4. Estadísticas
np.mean()
- Descripción: Calcula la media aritmética.
- Ejemplo:
mean_value = np.mean(array_sum) print(mean_value) # Output: 2.5
np.median()
- Descripción: Calcula la mediana.
- Ejemplo:
median_value = np.median(array_sum) print(median_value) # Output: 2.5
np.std()
- Descripción: Calcula la desviación estándar.
- Ejemplo:
std_value = np.std(array_sum) print(std_value) # Output: 1.118033988749895
5. Indexación y Slicing
Indexación Básica
- Descripción: Acceso a elementos individuales de un array.
- Ejemplo:
array = np.array([10, 20, 30, 40]) print(array[2]) # Output: 30
Slicing
- Descripción: Acceso a un subconjunto de un array.
- Ejemplo:
sliced_array = array[1:3] # Accede a los elementos en posiciones 1 y 2 print(sliced_array) # Output: [20 30]
Conclusión
NumPy proporciona una rica colección de funciones y métodos que facilitan la manipulación y el análisis de datos numéricos. Su capacidad para operar con arrays de manera eficiente lo convierte en una herramienta indispensable en la ciencia de datos, análisis estadístico y muchas aplicaciones de ingeniería y matemáticas. Familiarizarse con estos métodos es esencial para cualquier persona que desee trabajar con datos en Python. Si tienes alguna pregunta o necesitas ejemplos adicionales, ¡no dudes en preguntar!