numpy有简单的垫吗?

Yar*_*riv 2 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)
Run Code Online (Sandbox Code Playgroud)

输出:

[ 1.  2.  3.  0.  0.]
Run Code Online (Sandbox Code Playgroud)

我找不到办法做到这一点 numpy.pad()

Sve*_*ach 5

你可以使用ndarray.resize():

>>> x = np.array([1,2,3])
>>> x.resize(5)
>>> x
array([1, 2, 3, 0, 0])
Run Code Online (Sandbox Code Playgroud)

请注意,此函数的行为numpy.resize()与使用数组本身的重复副本的填充不同.(一致性适合那些记不起来的人.)