我有一组具有不同行数的numpy数组,我想将它们填充到固定数量的行,例如
具有3行的数组“ a”:
a = [
[1.1, 2.1, 3.1]
[1.2, 2.2, 3.2]
[1.3, 2.3, 3.3]
]
我想将“ a”转换为具有5行的数组:
[
[1.1, 2.1, 3.1]
[1.2, 2.2, 3.2]
[1.3, 2.3, 3.3]
[0, 0, 0]
[0, 0, 0]
]
我尝试过np.concatenate((a, np.zeros(3)*(5-len(a))), axis=0)
,但是它不起作用。
任何帮助将不胜感激。
答案 0 :(得分:2)
您正在寻找np.pad
。要使填充为零,必须将模式设置为constant
,并将每个轴的边缘上的pad_width
设置为:
np.pad(a, pad_width=((0,2),(0,0)), mode='constant')
array([[1.1, 2.1, 3.1],
[1.2, 2.2, 3.2],
[1.3, 2.3, 3.3],
[0. , 0. , 0. ],
[0. , 0. , 0. ]])