怎么从numpy数组中删除指定下标的数据
时间: 2024-05-07 20:16:03 浏览: 9
可以使用numpy.delete()函数来删除指定下标的数据。
语法:numpy.delete(arr, obj, axis=None)
参数:
- arr:要删除元素的数组。
- obj:要删除的元素的下标或切片。
- axis:指定要删除元素的轴。如果未提供,则默认为None,即展平输入数组,然后删除元素。
示例代码:
```python
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
print("原始数组:", arr)
# 删除下标为2的元素
new_arr = np.delete(arr, 2)
print("删除下标为2的元素后的数组:", new_arr)
# 删除下标为1和3的元素
new_arr = np.delete(arr, [1, 3])
print("删除下标为1和3的元素后的数组:", new_arr)
# 删除二维数组中第一列
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
new_arr = np.delete(arr, 0, axis=1)
print("删除第一列后的二维数组:")
print(new_arr)
```
输出结果:
```
原始数组: [1 2 3 4 5]
删除下标为2的元素后的数组: [1 2 4 5]
删除下标为1和3的元素后的数组: [1 3 5]
删除第一列后的二维数组:
[[2 3]
[5 6]
[8 9]]
```
相关问题
怎么向空的numpy数组中加入numpy数组
你可以使用numpy中的concatenate函数将两个numpy数组按照某个方向拼接起来,可以使用如下代码将一个numpy数组添加到另一个空的numpy数组中:
``` python
import numpy as np
# 空的numpy数组
empty_arr = np.empty([0, 3])
# 待添加的numpy数组
arr_to_add = np.array([[1, 2, 3], [4, 5, 6]])
# 在空的numpy数组中添加新的numpy数组
result = np.concatenate([empty_arr, arr_to_add])
```
当你运行这个代码时,你会得到一个形状为(2, 3)的numpy数组,其内容为:
```
[[1. 2. 3.]
[4. 5. 6.]]
```
希望这个回答能够帮到你!
numpy数组中某个数据的index
要查找一个numpy数组中某个数据的index,可以使用numpy库中的where函数。这个函数会返回一个包含符合条件的元素的下标的元组。
下面是一个例子,假设我们有一个numpy数组arr,要查找其中值为5的元素的下标:
```python
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 5, 8, 9, 10])
indexes = np.where(arr == 5)
print(indexes)
```
输出结果会是一个元组,包含符合条件的元素在数组中的下标:
```python
(array([4, 6]),)
```
这表示在数组arr中,值为5的元素分别在第4和第6个位置上。