gpt4 book ai didi

python - 想在 numpy 中附加 2 个二维数组

转载 作者:太空宇宙 更新时间:2023-11-04 01:16:20 28 4
gpt4 key购买 nike

我正在尝试附加 2 个 2d numpy 数组

a = np.array([[1],
[2],
[3],
[4]])

b = np.array([[ 4, 5, 6],
[ 7, 8, 9],
[10, 11, 12]])

目标是

c = ([[1],
[2],
[3],
[4],
[ 4, 5, 6],
[ 7, 8, 9],
[10, 11, 12]])

尝试了 np.concatenate((a,b),axis=0)np.concatenate((a,b),axis=1)并得到

ValueError: all the input array dimensions except for the concatenation axis must match exactly

np.append(a,b)

但似乎没有任何效果。如果我转换为列表,它会给我想要的结果,但似乎效率低下

c = a.tolist() + b.tolist()

有没有办法做到这一点?

最佳答案

如错误所示,尺寸必须匹配。

因此您可以调整 a 的大小,使其与 b 的尺寸匹配,然后连接(空单元格用零填充)。

a.resize(3,4)
a = a.transpose()
np.concatenate((a,b))

array([[ 1, 0, 0],
[ 2, 0, 0],
[ 3, 0, 0],
[ 4, 0, 0],
[ 4, 5, 6],
[ 7, 8, 9],
[10, 11, 12]])

关于python - 想在 numpy 中附加 2 个二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24431456/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com