附加Numpy数组

2024-04-26 17:30:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个for循环,我在其中创建numpy数组a。我想有一个results numpy数组,我把数组a附加到每个循环中。所以结果数组的最终结构应该是[a,a,a,etc…],这样我就可以进入一个新数组[len(a),len(a),etc…]

我不知道怎么做。我试过了np.附加,并且不知道如何执行此操作(我不清楚axis参数的作用)。我是numpy的新手,所以非常感谢您的帮助。我不想将数组展平—我希望它的行为类似于将python列表附加到python列表。你知道吗

抱歉格式化-我正在打电话。你知道吗


Tags: numpy列表for参数lennpetc数组
1条回答
网友
1楼 · 发布于 2024-04-26 17:30:45

最简单(也是最快)的方法是收集列表中的数组,然后使用np.concatenate将它们连接在一起。你知道吗

示例测试数据

import numpy as np

a = np.random.rand(4,5)
b = np.random.rand(4,5)
c = np.random.rand(4,5)
d = np.random.rand(4,5)

lst = [a,b,c,d]

可以沿任一轴连接-默认情况下沿0轴连接。你知道吗

>>> result = np.concatenate(lst)
>>> result.shape
(16, 5)

…沿着第一轴。你知道吗

>>> result = np.concatenate(lst, axis=1)
>>> result.shape
(4, 20)

数组需要在其他轴上匹配,也就是说,如果您垂直连接它们,它们的宽度必须相同。你知道吗

相关问题 更多 >