numpy有简单的垫子吗?

numpy有简单的垫子吗?,numpy,pad,Numpy,Pad,是否有一个numpy函数以这种方式填充数组 import numpy as np def pad(x, length): tmp = np.zeros((length,)) tmp[:x.shape[0]] = x return tmp x = np.array([1,2,3]) print pad(x, 5) 输出: [ 1. 2. 3. 0. 0.] 我找不到使用numpy.pad()的方法。您可以使用: 请注意,此函数的行为与使用阵列本身的重复副本填

是否有一个numpy函数以这种方式填充数组

import numpy as np

def pad(x, length):
    tmp = np.zeros((length,))
    tmp[:x.shape[0]] = x
    return tmp

x = np.array([1,2,3])
print pad(x, 5)
输出:

[ 1.  2.  3.  0.  0.]
我找不到使用
numpy.pad()的方法。您可以使用:


请注意,此函数的行为与使用阵列本身的重复副本填充的函数不同。(一致性适用于不能记住所有内容的人。)

Sven Marnach建议使用
ndarray.resize()
可能是最简单的方法,但为了完整性,下面介绍如何使用
numpy.pad

In [13]: x
Out[13]: array([1, 2, 3])

In [14]: np.pad(x, [0, 5-x.size], mode='constant')
Out[14]: array([1, 2, 3, 0, 0])

需要注意的是:如果
长度
小于数组的形状,则会裁剪数组。
In [13]: x
Out[13]: array([1, 2, 3])

In [14]: np.pad(x, [0, 5-x.size], mode='constant')
Out[14]: array([1, 2, 3, 0, 0])