我有一个项目,其中有一个for循环运行大约14次。在每次迭代中,都会使用此形状创建2D数组(4,3)。我想将这些2D数组连接成一个3D数组(形状为4,3,14),这样每个2D数组都会处于不同的“#34;层”状态。 应该如何在Python中实现?
答案 0 :(得分:2)
您可以使用numpy.dstack()
将2D数组列表转换为3D数组:
https://docs.scipy.org/doc/numpy/reference/generated/numpy.dstack.html
答案 1 :(得分:0)
如果您提到的数组大小是静态的,则可以执行以下操作
Intent intent = new Intent(MainActivity.this, MainActivity.class);
startActivity(intent);
将最终数组初始化为所需大小,然后循环并将矩阵(4,3)分配给相应循环计数器的索引。
形状和最终矩阵是
output_array = numpy.zeros((14,4,3), dtype=np.float32)
for i in range(14):
mat = numpy.random.rand(4,3)
output_array[i] = mat
给你回复
numpy.shape(output_array)
输出
(14, 4, 3)
希望有所帮助
答案 2 :(得分:0)
按照@JohnZwinck在评论中的建议,向2D数组添加图层。
#data_in是形状为(14,n,m)的原始数据 #循环涉及一次获取一个级别(并应用适用的函数),然后将生成的2D数组存储到列表中:
这是可行的解决方案:
project
答案 3 :(得分:-2)
如果您的数组只是'list',则sumplt在开头定义一个空列表并将项追加到其中:
foo=[]
for i in range(14):
...
foo.append(tab)