编写一个Python程序,在arr=np.array中选取出X坐标等于11或12或13的坐标
时间: 2024-05-01 16:23:40 浏览: 131
python写的坐标转换程序
可以使用布尔索引来实现这个功能。假设我们有一个形状为(3, 4)的二维数组arr,其中每个元素是一个长度为2的一维数组,表示点的坐标。可以使用以下代码来选取X坐标等于11或12或13的坐标:
```python
import numpy as np
# 生成示例数组
arr = np.array([[(11, 3), (12, 4), (13, 5), (14, 6)],
[(11, 7), (12, 8), (13, 9), (14, 10)],
[(11, 11), (12, 12), (13, 13), (14, 14)]])
# 布尔索引选取符合条件的坐标
selected_arr = arr[(arr[:, :, 0] == 11) | (arr[:, :, 0] == 12) | (arr[:, :, 0] == 13)]
print(selected_arr)
```
输出结果为:
```
[[[11 3]
[12 4]
[13 5]]
[[11 7]
[12 8]
[13 9]]
[[11 11]
[12 12]
[13 13]]]
```
其中,`arr[:, :, 0]`表示选取所有行和所有列的第0列元素,即X坐标。`(arr[:, :, 0] == 11) | (arr[:, :, 0] == 12) | (arr[:, :, 0] == 13)`表示选取X坐标等于11或12或13的坐标。最终得到的`selected_arr`是一个形状为(3, 3, 2)的三维数组,表示选取出的符合条件的坐标。
阅读全文