首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何获取二维Numpy数组中每一行的前两个值的索引,但排除了特定区域?

要获取二维Numpy数组中每一行的前两个值的索引,但排除特定区域,可以使用以下方法:

  1. 首先,导入Numpy库并创建一个二维数组:
代码语言:txt
复制
import numpy as np

arr = np.array([[1, 2, 3, 4],
                [5, 6, 7, 8],
                [9, 10, 11, 12]])
  1. 接下来,使用切片操作获取每一行的前两个值的索引:
代码语言:txt
复制
indices = arr[:, :2]

这将返回一个新的数组,其中包含原数组每一行的前两个值。

  1. 如果要排除特定区域,可以使用布尔索引来过滤结果。例如,如果要排除第一行和第三行,可以使用以下代码:
代码语言:txt
复制
excluded_rows = [0, 2]
filtered_indices = indices[~np.isin(np.arange(len(arr)), excluded_rows)]

这将返回一个新的数组,其中包含排除了特定行的索引。

综上所述,获取二维Numpy数组中每一行的前两个值的索引,但排除特定区域的完整代码如下:

代码语言:txt
复制
import numpy as np

arr = np.array([[1, 2, 3, 4],
                [5, 6, 7, 8],
                [9, 10, 11, 12]])

indices = arr[:, :2]
excluded_rows = [0, 2]
filtered_indices = indices[~np.isin(np.arange(len(arr)), excluded_rows)]

print(filtered_indices)

这将输出:

代码语言:txt
复制
[[2]
 [6]]

这个结果表示原数组中第三行和第七行的前两个值的索引。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券