将一维数组放入二维数组中

时间:2016-08-30 22:08:59

标签: python arrays numpy

我有一个2D数组x,其中我要复制一维数组y的内容:

import numpy as np
x = np.array([[1, 2], [4, 5], [3, 3]], np.int32)
y = np.array([1, 2, 3, 4, 5, 6])

x[:,:] = y   # i would like x to be [[1, 2], [3, 4], [5, 6]]
  

ValueError:无法将形状(6)的输入数组广播为形状(3,2)

怎么做?

1 个答案:

答案 0 :(得分:1)

您必须将y转换为类似x的数组:

>>> x = y.reshape(x.shape)
>>> x
array([[1, 2],
       [3, 4],
       [5, 6]])

但请注意,y应该重塑x的形状。