【发布时间】:2019-01-08 10:48:43
【问题描述】:
我的目标是有一个 4D 数组,其中第 4 维中的每个“值”k 对应于第 k 个 3D 张量。我已经尝试了很多东西,但总是得到“所有输入数组必须具有相同的维数”。
有一个函数返回一个新的但不同的数组(总是大小相同,例如 3000x1000x500),我希望最终输出是一个 3000x1000x500xK*n 数组,其中 n 是逃避while 循环。这是我目前所拥有的:
tensors = []
K = 20 #arbitrary value
while error > threshold: #arbitrary constraint
for _ in range(K):
new_tensor = function(var)
stack = [tensors, new_tensor]
tensors = np.concatenate([t[np.newaxis] for t in stack])
提前致谢
【问题讨论】:
-
最好将您的数组收集在一个列表中,然后进行连接。
np.stack是一种方便的工具,可以将它们连接到新轴上。
标签: python arrays numpy multidimensional-array tensor