lev*_*que 15 python arrays numpy concatenation
我有一个2x2 numpy数组:
x = array(([[1,2],[4,5]]))
Run Code Online (Sandbox Code Playgroud)
我必须与一维数组合并(或堆叠,如果你愿意):
y = array(([3,6]))
Run Code Online (Sandbox Code Playgroud)
通过将它添加到行的末尾,从而形成一个2x3 numpy数组,其输出如下:
数组([[1,2,3],[4,5,6]])
现在,在numpy指南中提出的方法是:
hstack((x,y))
Run Code Online (Sandbox Code Playgroud)
但是这不起作用,返回以下错误:
ValueError:数组必须具有相同数量的维度
可能的唯一解决方法似乎是这样做:
hstack((x, array(([y])).T ))
Run Code Online (Sandbox Code Playgroud)
这是有效的,但看起来和听起来相当hackish.似乎没有其他方法来转置给定的数组,因此hstack能够消化它.我想知道,有更清洁的方法吗?难道没有办法让numpy猜出我想做什么吗?
Jos*_*sef 28
unutbu的答案一般都有效,但在这种情况下还有np.column_stack
>>> x
array([[1, 2],
[4, 5]])
>>> y
array([3, 6])
>>> np.column_stack((x,y))
array([[1, 2, 3],
[4, 5, 6]])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14069 次 |
| 最近记录: |