Python 3.x 矩阵nxnx3,得到内部3数组的第一个元素
我有一个表示图像的numpy矩阵,我想有效地得到每种颜色的第一个元素的数组。矩阵的大小为nxmx3和x3,因为它们是颜色。我要做的是总结所有的例子,比如红色。下面举一个例子:Python 3.x 矩阵nxnx3,得到内部3数组的第一个元素,python-3.x,numpy,Python 3.x,Numpy,我有一个表示图像的numpy矩阵,我想有效地得到每种颜色的第一个元素的数组。矩阵的大小为nxmx3和x3,因为它们是颜色。我要做的是总结所有的例子,比如红色。下面举一个例子: 我需要有效地这样做,因为N和M非常大a[:,:,0].sum(),或a.sum(axis=(0,1))我爱你,真的thx,我的遗传算法非常慢,节省了我的战利品。thx,但我一直在寻找一个像a[:,0]之类的快速有效的解决方案 a = np.random.randint(1,10,(2,4,3)) a array([[[
我需要有效地这样做,因为N和M非常大
a[:,:,0].sum()
,或a.sum(axis=(0,1))
我爱你,真的thx,我的遗传算法非常慢,节省了我的战利品。thx,但我一直在寻找一个像a[:,0]之类的快速有效的解决方案
a = np.random.randint(1,10,(2,4,3))
a
array([[[1, 8, 8],[9, 9, 9],[4, 7, 7],[7, 1, 5]],[[3, 2, 2],[8, 5, 4],[3, 3, 5],[2, 2, 7]]])
sum_r = 0
for i in a:
for j in i:
sum_r += j[0]
print(sum_r)
37
1 + 9 + 4 + 7 + 3 + 8 + 3 + 2
37
def sumColumn(m):
return [sum(col) for col in zip(*m)]
column = 0
matrix = [[1 , 4, 5, 12],
[-5, 8, 9, 0],
[-6, 7, 11, 19]]
print("Sum of the elements in column", sumColumn(matrix)[column])