📜  如何删除 numpy 数组的第一行 - Python (1)

📅  最后修改于: 2023-12-03 15:08:29.106000             🧑  作者: Mango

如何删除 numpy 数组的第一行 - Python

在使用 numpy 库处理数据时,有时候我们需要删除一个数组的第一行。下面是几种方法可以实现这个功能。

方法一:使用切片

使用切片的方法是最常见的删除数组第一行的方法。使用 array[1:] 会返回原数组的第二行及其后面的所有行,即删除了原数组的第一行。

import numpy as np

array = np.array([[1,2,3],[4,5,6],[7,8,9]])
array = array[1:]  # 删除第一行

print(array)

输出:

[[4 5 6]
 [7 8 9]]
方法二:使用 np.delete()

numpy 库提供了一个函数 np.delete() 可以方便地删除一个数组的任意行或列。使用这个函数删除第一行,只需要指定 axis=0obj=0 即可。

import numpy as np

array = np.array([[1,2,3],[4,5,6],[7,8,9]])
array = np.delete(array, 0, axis=0)  # 删除第一行

print(array)

输出:

[[4 5 6]
 [7 8 9]]
方法三:使用 np.ndarray.tolist()

numpy 中的数组默认是不可变的,因此我们无法直接删除其中的元素。但是,numpy 数组的 .tolist() 方法可以将其转换成 python 的列表,通过列表的 .pop() 方法删除。

import numpy as np

array = np.array([[1,2,3],[4,5,6],[7,8,9]])
array_list = array.tolist()  # 转换成列表
array_list.pop(0)  # 删除第一行
array = np.array(array_list)  # 转换回 numpy 数组

print(array)

输出:

[[4 5 6]
 [7 8 9]]

以上就是三种常见的删除 numpy 数组第一行的方法,每一种方法都有其优缺点。我们可以根据自己的需求选择适合的方法来操作数据。