NumPy Array
Clase 2 de 24 • Curso de Manipulación y Transformación de Datos con Pandas y NumPy
Resumen
El array es el principal objeto de la librería. Representa datos de manera estructurada y se puede acceder a ellos a través del indexado, a un dato específico o un grupo de muchos datos específicos.
lista = [1, 2 , 3, 4, 5, 6, 7, 8, 9]
lista
---> [1, 2, 3, 4, 5, 6, 7, 8, 9]
Volvemos nuestra lista, un array
arr = np.array(lista)
arr
---> [1, 2, 3, 4, 5, 6, 7, 8, 9]
Una matriz son varios Vectores o listas agrupadas una encima de la otra, es como una tabla de Excel
matriz = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
matriz = np.array(matriz)
matriz
---> array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
El indexado nos permite acceder a los elementos de los array y matrices
Los elementos se empiezan a contar desde 0.
arr[0]
---> 1
Index | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
---|---|---|---|---|---|---|---|---|---|
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
Es posible operar directamente con los elementos.
arr[0] + arr[5]
---> 7
0 | + | 5 |
---|---|---|
1 | 6 |
En el caso de las matrices, al indexar una posición se regresa el array de dicha posición.
matriz[0]
---> array([1, 2, 3])
Index | 0 | 1 | 2 |
---|---|---|---|
0 | 1 | 2 | 3 |
1 | 4 | 5 | 6 |
2 | 7 | 8 | 9 |
Para seleccionar un solo elemento de la matriz se especifica la posición del elemento separada por comas.
Nota: El primer elemento selecciona las filas, el segundo elemento las columnas
matriz[0, 2]
---> 3
Slicing
Nos permite extraer varios datos, tiene un comienzo y un final.
En este ejemplo se está extrayendo datos desde la posición 1 hasta la 5.
arr[1:6]
---> array([2, 3, 4, 5, 6])
Si no se ingresa el valor de inicio, se toma el inicio como la posición 0.
arr[:6]
---> array([1, 2, 3, 4, 5, 6])
En cambio, si no se le da una posición final, se regresan todos los elementos hasta el final del array.
arr[2:]
---> array([3, 4, 5, 6, 7, 8, 9])
También se puede trabajar por pasos.
En este ejemplo de 3 en 3.
Regresa la posición 0, 0 + 3, 3 + 3 y como no hay posición 6 + 3, no se regrese nada.
arr[::3]
---> array([1, 4, 7])
Index | 0 | 3 | 7 |
---|---|---|---|
0 | 1 | 4 | 7 |
Cuando se le asigna un valor negativo se regresan los valores comenzando desde la última posición del array.
arr[-1]
---> 9
arr[-3:]
---> array([7, 8, 9])
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---|
Para el caso de las matrices, sucede algo similar.
Para acceder a los valores entre filas.
matriz[1:]
---> array([[4, 5, 6],
[7, 8, 9]])
Para acceder a los valores entre filas y columnas.
matriz[1:, 0:2]
---> array([[4, 5],
[7, 8]])
Reto
Crea una matriz de 3 dimensiones y cuéntanos:
- ¿Qué pudiste hacer?
- ¿Cómo hacer un Slicing de los datos?
Contribución creada por: Edward Giraldo.