向1-D数组添加零值并将其拟合到2D数组中,以便不抛出任何错误

时间:2013-05-29 21:17:27

标签: python numpy

我在for循环中有一个可变大小的一维数组,我把这些数组放在一个大小为40x4000的二维数组的行中。如何将零附加到1-D数组的末尾,使最终大小变为1x4000并且能够适合2d数组?

例如。

size of 1-D: 3700 , so add 300 zeros at the end
size of 1-D: 3800 , so add 200 zeros at the end

for i in range(n)
   s = func(i) #returns row vector
   # what to do here?
   two_dim[i] = s

编辑:这些是numpy数组而不是列表

1 个答案:

答案 0 :(得分:1)

为较小的输入执行此操作,希望这是您正在寻找的。

初始列表testList = [9, 9, 9, 8, 4, 5]

>>> maxListLen = 10
>>> testList = testList+[0]*(maxListLen-len(testList))
[9, 9, 9, 8, 4, 5, 0, 0, 0, 0]

由于OP正在寻找numpy数组。

>>> testArray = numpy.array([1, 2, 3, 4])
>>> testArray = numpy.append(testArray, [0]*(maxListLen-len(testArray)))
>>> testArray
array([1, 2, 3, 4, 0, 0, 0, 0, 0, 0])