我有两个相对类似的操作,我想知道该怎么做。
第一个更简单。我有像
这样的numpy数组[[a,b,c,d],
[e,f,g,h],
[i,j,k,l]]
我想将列总结为:
[6,12,18,24]
我知道我可以用for循环执行此操作:
for i in range(0,ROW_LENGTH): #ROW_LENGTH defined elsewhere
listsum[i]=list[:,i].sum()
但这不可能是pythonic方式,可以吗?
第二项任务是我需要做一些类似3D阵列的事情。我假设解决方案与此类似。一个简单的例子是:
[[[a,b,c],[d,e,f],[g,h,i]],
[[j,k,l],[m,n,o],[p,q,r]],
[[s,t,u],[v,w,x],[y,z,_]]]
输出应该是:
[[a+j+s,b+k+t,c+l+u],[d+m+v,e+n+w,f+o+x],[g+p+y,h+q+z,i+r+_]]
我希望了解这两种技术对于我掌握python的能力一般来说都是一大福音!
我将在这里链接到一个单独的问题,我要求同一个项目:
答案 0 :(得分:0)
为了做到这一点,你可以使用numpy的sum方法。
import numpy as np
a = np.array([[1,2,3],[4,5,6],[7,8,9]])
a.sum(axis=0)
应该做的伎俩