将n个零添加到数组的末尾

时间:2017-07-31 17:30:39

标签: python arrays numpy

我想在数组中添加n个零。

如果你的数组是x,并且你想在数组和数组中添加3个零而不创建2个数组:

x = np.array([1.0, 2.0, 1.0, 2.0, 7.0, 9.0, 1.0, 1.0, 3.0, 4.0, 10.0])

我认为这个命令会有所帮助:

x = [x, np.zeros(N)]

但我收到了2个阵列而不是1个大阵列:

[array([  1.,   2.,   1.,   2.,   7.,   9.,   1.,   1.,   3.,   4.,  10.]),
 array([ 0.,  0.,  0.,  0.])]

所以我想创建这种类型的数组:

[array([  1.,   2.,   1.,   2.,   7.,   9.,   1.,   1.,   3.,   4.,  10., 0.,  0.,  0.,  0.])]

任何人都可以帮我解决这个相当简单的问题吗?

1 个答案:

答案 0 :(得分:12)

您可以使用numpy.pad,在常量模式下将默认值0填充到数组的两端,指定 pad_width =(0,N)将N个零填充到右侧,而不向左侧填充:

N = 4
np.pad(x, (0, N), 'constant')
#array([  1.,   2.,   1.,   2.,   7.,   9.,   1.,   1.,   3.,   4.,  10.,
#         0.,   0.,   0.,   0.])