我想在数组中添加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.])]
任何人都可以帮我解决这个相当简单的问题吗?
答案 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.])