在不使用for循环的情况下,在执行操作的单独子数组中获取numpy子数组的结果

问题描述 投票:1回答:1

下面的代码检查子数组的每个元素是否大于2,并在各自的子数组中给出结果:

2d_array=np.array([[1,2,3,4],[4,56,7,1]])
for elem in 2d_array:
    print(elem[elem[:]>2])

输出:

[3 4]
[ 4 56  7]

我们可以不使用for loop做同样的事情,最好使用numpy函数。

python arrays python-3.x numpy multidimensional-array
1个回答
1
投票

Numpy生成数组。在您的情况下,每个结果行具有不同的长度,因此您无法获取数组,只能获取列表列表。

但是,如果要将所有值收集到一维数组中,您可以这样做

vaulues = array_2d[array_2d > 2]
© www.soinside.com 2019 - 2024. All rights reserved.