En este artículo, discutiremos cómo eliminar las últimas N filas de la array NumPy.
Método 1: usar el operador de división
La división es una operación de indexación que se usa para iterar sobre una array.
Sintaxis: nombre_array[inicio:fin]
donde start es el inicio es el índice y stop es el último índice.
También podemos hacer cortes negativos en Python. Se denota por la siguiente sintaxis.
Sintaxis: nombre_array[: -n]
donde, n es el número de filas desde la última que se eliminó.
Ejemplo 1:
Vamos a crear una array con 6 filas y 3 columnas y eliminaremos las últimas N filas usando el corte.
Python3
# importing numpy module import numpy as np # create an array with 6 rows and 3 columns a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12], [13, 14, 15], [16, 17, 18]]) print(a) # delete last 1 st row print("data after deleting last one row ", a[:-1]) # delete last 2 nd row print("data after deleting last two rows ", a[:-2]) # delete last 3 rd row print("data after deleting last theww rows ", a[:-3]) # delete last 4 th row print("data after deleting last four rows ", a[:-4]) # delete last 5 th row print("data after deleting last five rows ", a[:-5]) # delete last 6 th row print("data after deleting last six rows ", a[:-6])
Producción:
Ejemplo 2:
Usamos for loop para iterar sobre los elementos y usamos el operador de corte, vamos a eliminar los datos y luego imprimir los datos.
Python3
# importing numpy module import numpy as np # create an array with 5 rows and # 4 columns a = np.array([[21, 7, 8, 9], [34, 10, 11, 12], [1, 3, 14, 15], [1, 6, 17, 18], [4, 5, 6, 7]]) # use for loop to iterate over the # elements for i in range(1, len(a)+1): print("Iteration No", i, "deleted", i, "Rows") print("Remaining data present in the array is\n ", a[:-i])
Producción:
Ejemplo 3:
También podemos especificar los elementos que necesitamos y almacenarlos en otra variable de array usando el operador de división. De esta manera, no obtendremos las últimas N filas (eliminarlas).
Python3
# importing numpy module import numpy as np # create an array with 5 rows and # 4 columns a = np.array([[21, 7, 8, 9], [34, 10, 11, 12], [1, 3, 14, 15], [1, 6, 17, 18], [4, 5, 6, 7]]) # place first 2 rows in b variable # using slice operator b = a[:2] print(b)
Producción:
[[21 7 8 9] [34 10 11 12]]
Método 2: Usar el método numpy.delete()
Se utiliza para eliminar los elementos de una array NumPy en función del número de fila.
Sintaxis: numpy.delete(array_name,[rownumber1,rownumber2,.,rownumber n],axis)
Parámetros:
- array_name es el nombre de la array.
- los números de fila son los valores de fila
- eje especifica fila o columna
- axis=0 especifica fila
- axis=1 especifica la columna
Aquí vamos a eliminar las últimas filas, así que especifique los números de fila en la lista.
Ejemplo 1: eliminar las últimas tres filas
Python3
# importing numpy module import numpy as np # create an array with 5 rows and # 4 columns a = np.array([[21, 7, 8, 9], [34, 10, 11, 12], [1, 3, 14, 15], [1, 6, 17, 18], [4, 5, 6, 7]]) # delete last three rows # using numpy.delete a = np.delete(a, [2, 3, 4], 0) print(a)
Producción:
[[21 7 8 9] [34 10 11 12]]
Ejemplo 2: eliminar todas las filas
Python3
# importing numpy module import numpy as np # create an array with 5 rows and 4 columns a = np.array([[21, 7, 8, 9], [34, 10, 11, 12], [1, 3, 14, 15], [1, 6, 17, 18], [4, 5, 6, 7]]) # delete last three rows # using numpy.delete a = np.delete(a, [0, 1, 2, 3, 4], 0) print(a)
Producción:
[ ]
Publicación traducida automáticamente
Artículo escrito por pulamolusaimohan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA