【发布时间】:2021-07-15 06:46:12
【问题描述】:
我目前有一个列表 (list_arr),其中包含 8 个具有以下大小的 numpy 数组:
0. (6300, 6675, 3)
1. (5560, 6675, 3)
2. (5560, 6675, 3)
3. (5560, 6675, 3)
4. (6300, 6675, 3)
5. (5560, 6675, 3)
6. (5560, 6675, 3)
7. (5560, 6675, 3)
我想以 4 个为一组(例如 0-3 和 4-7)堆叠数组,以使输出数组的大小为 (22980, 6675, 3)。这可以使用以下代码手动完成:
out1 = np.vstack((list_arr[0], list_arr[1], list_arr[2], list_arr[3]))
out2 = np.vstack((list_arr[4], list_arr[5], list_arr[6], list_arr[7]))
不过,我打算将这段代码升级为长度=116的更长列表,上面的方法效率不高。有没有办法在 for 循环中做到这一点?
【问题讨论】:
-
请通过intro tour、help center 和how to ask a good question 了解本网站的运作方式并帮助您改进当前和未来的问题,从而帮助您获得更好的答案。 “告诉我如何解决这个编码问题?”与 Stack Overflow 无关。您必须诚实地尝试解决方案,然后就您的实施提出具体问题。 Stack Overflow 无意取代现有的教程和文档。
-
键入这些列表可能会很痛苦,但不会对运行时间造成太大影响。
vstack只需要一个列表,所以列表切片应该很简单。
标签: python arrays numpy for-loop vstack