伙计们,
array([[ 3., 12., 21., 30.],
[ 3., 12., 21., 30.],
[ 3., 12., 21., 30.],
[ 3., 12., 21., 30.],
...
[ 3., 12., 21., 30.]
[ 3., 12., 21., 30.],
[ 3., 12., 21., 30.],
[ 3., 12., 21., 30.]])
如何对同一列中的每29行求和: (3 + 3 + 3 + 3 ...)29次 在这些值的总和之后,可以在(48,8760)中重塑数组(1392,8760)的大小。 我尝试查看重塑和求和函数,但很难深入了解其工作原理。
答案 0 :(得分:2)
这里的总体思路是为数组添加一个额外的维度,以将其分解为a = np.zeros((1392, 8760))
chunk_size = 29
个长度的块,然后沿第一个轴求和。
设置
reshape
使用 sum
和 out = a.reshape(-1, chunk_size, a.shape[1]).sum(1)
print(out.shape)
:
(48, 8760)
ln -s /home/myname /opt/deeplearning/workspace/tutorials/