Python 如何将一个numpy数组转移到另一个数组中

Python 如何将一个numpy数组转移到另一个数组中,python,arrays,numpy,Python,Arrays,Numpy,我有一个函数,它每秒返回一个numpy数组,我想将其存储在另一个数组中以供参考。对于eg(返回数组_a) 但当我打印array_collect时,我会得到一个添加的数组,而不是一个包含数组的更大数组 array_collect = [ 25. 50. 25. 25. 50. 1. 1. 1. 1. 1.

我有一个函数,它每秒返回一个numpy数组,我想将其存储在另一个数组中以供参考。对于eg(返回数组_a)

但当我打印array_collect时,我会得到一个添加的数组,而不是一个包含数组的更大数组

 array_collect = [    25.       50.       25.       25.       50.  
                       1.        1.        1.        1.        1.  
                       25.       50.       25.       25.       50.  
                       1.        1.        1.        1.        1.  
                       25.       50.       25.       25.       50.  ] 
我想要的是

 array_collect = [   [[  25.     50.       25.       25.       50.  ]
                      [1.        1.        1.        1.        1.   ]] 
                     [[  25.     50.       25.       25.       50.  ]
                      [1.        1.        1.        1.        1.   ]]
                     [[  25.     50.       25.       25.       50.  ]
                      [1.        1.        1.        1.        1.   ]]  ]

如何获取它???

我找到了它,这可以通过使用:

 np.reshape()
形成的新阵列可以使用

y= np.reshape(y,(a,b,c))

其中a是数组存储的数量,(b,c)是原始数组的形状

将numpy导入为np
数组_collect=np.数组([[25,50,25,25,50.],[1,1,1,1,1.]))
数组a=np.数组([[2,5,2,2,5.],[1,1,1,1.]))
数组集合=np。连接((数组集合,数组a),轴=0)。重塑(2,2,5)
>>
[[[ 25.  50.  25.  25.  50.]
[  1.   1.   1.   1.   1.]]
[[  2.   5.   2.   2.   5.]
[  1.   1.   1.   1.   1.]]]

您可以使用
vstack

array_collect = np.array([[25.,50.,25.,25.,50.],[1.,1.,1.,1.,1.]])
array_a = np.array([[2.,5.,2.,2.,5.],[1.,1.,1.,1.,1.]])


array_collect=np.vstack((array_collect,array_a))
但是,如果您提前知道总分钟数,则最好先定义数组(例如,使用
)并逐渐填充它-这样,更容易保持在内存限制内

no_minutes = 5 #say 5 minutes
array_collect = np.zeros((no_minutes,array_a.shape[0],array_a.shape[1]))
然后,每一分钟,我

array_collect[m] = array_a
array_collect[m] = array_a