首页 > 解决方案 > numpy nansum 跨第一个索引

问题描述

我有一个示例 2 x 2 x 2 数组:

np.array([[[ 1,  2],
        [ 3,  4]],

       [[ 5,  6],
        [ 7 ,  8]]])

我想要跨第一个索引的数组的 nansum 如下:

将所有值相加:

[[ 1,  2],
[ 3,  4]]

[[ 5,  6],
[ 7 ,  8]]

第一个数组的总和为 10,第二个数组的总和为 26

IE

array([10, 26])

标签: pythonnumpysum

解决方案


我想你正在寻找这个

a = np.array([[[ 1,  2],
               [ 3,  4]],
             [[ 5,  6],
              [ 7 ,  8]]])
np.nansum(a,axis=(1,2))
# array([10, 26])

因为您只想在轴 1 和轴 2 上求和,并且每个轴 0 得到一个数字


推荐阅读