📅  最后修改于: 2023-12-03 14:46:01.228000             🧑  作者: Mango
numpy.pad()
是一个用于在数组的边缘填充常量值的方法。填充的值可以是通过打算法、对称等方法生成的。
numpy.pad(array, pad_width, mode='constant', **kwargs)
array
:需要填充的数组。pad_width
:每个轴需要填充的数值数目。需要以两个元素的元组形式给出。mode
:填充模式,包括常数填充和非常数填充。默认为'constant'。import numpy as np
arr = np.array([[1, 2], [3, 4]])
pad_arr = np.pad(arr, ((2, 3), (2, 3)), mode='constant', constant_values=0)
print(pad_arr)
输出结果:
array([[0, 0, 0, 0, 0, 0],
[0, 0, 1, 2, 0, 0],
[0, 0, 3, 4, 0, 0],
[0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0]])
在上面的示例中,我们对原始的 $2 \times 2$ 的数组进行填充,我们以一个2行3列和3行2列的0数组进行填充。当mode参数的值为'constant'时,constant_values可以是任何数字。
arr = np.array([[1, 2], [3, 4]])
pad_arr = np.pad(arr, ((2, 3), (2, 3)), mode='edge')
print(pad_arr)
输出结果:
array([[1, 1, 1, 2, 2, 2],
[1, 1, 1, 2, 2, 2],
[1, 1, 1, 2, 2, 2],
[3, 3, 3, 4, 4, 4],
[3, 3, 3, 4, 4, 4],
[3, 3, 3, 4, 4, 4]])
在上面的示例中,我们以'edge'模式进行填充,这会在数组的边缘使用边缘值填充。这对于图像分析和处理等领域非常有用。