如何解决Numpy 数组添加一列
对 python 有点新,我需要使用 numpy 来附加一列,我有一个带 [[1 2 3] [4 5 6]]
的 ndarray a 和另一个带 b [1 7]
的 ndarray,所以最终结果应该是 {{1} } .我试过了
[[1 2 3 1] [4 5 6 7]
但我明白
所有输入数组的维数必须相同
(有道理)。我也试图将它插入到 for 循环中,但根据我在 python 中看到的内容,这些库有一个简单的方法来做事,我想知道是否有更有效的方法?
解决方法
尝试 numpy.hstack
将轴添加到 b -
a = np.array([[1,2,3],[4,5,6]])
b = np.array([1,7])
np.hstack([a,b[:,None]])
array([[1,3,1],6,7]])
注意事项:
-
b[:,None]
添加一个轴将 b 从一维(2,)
转为二维(2,1)
数组(与b.reshape(-1,1)
相同) -
np.hstack
现在能够水平堆叠(2,3)
和(2,1)
以提供(2,4)
形状的数组
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。