基于其他数组的numpy数组的总和

时间:2014-01-13 22:04:58

标签: arrays numpy sum

我有两个数组:

array1 =    [[3,7,2],
             [1,4,5],
             [9,8,7]]

array2 =    [[0,1,0],
             [1,0,0],
             [1,0,1]]

我想获得numpy.sum(array1),但仅限于array2==0

所以最后我想得到一个22(3 + 2 + 4 + 5 + 8)的值。

1 个答案:

答案 0 :(得分:2)

array1 = numpy.array([[3,7,2],
                      [1,4,5],
                      [9,8,7]])

array2 = numpy.array([[0,1,0],
                      [1,0,0],
                      [1,0,1]])

result = numpy.sum(array1[array2==0])
print(result)

输出:22

您可以使用其他numpy数组索引numpy数组。许多运算符(如==)可以作为元素操作应用于numpy数组。