在Python中零填充矩阵

时间:2019-10-10 05:12:00

标签: python numpy matrix

我有一个5x20矩阵,我打算使用矩阵函数和只能用于对称矩阵的傅里叶变换等变换。如何通过零填充将5x20矩阵转换为20x20矩阵?

3 个答案:

答案 0 :(得分:1)

import numpy as np
a = np.array([[1,1,1,1],[2,2,2,2]])
b=np.zeros((20,20))

result = np.zeros_like(b)
x = 0
y = 0
result[x:a.shape[0],y:a.shape[1]] = a
print(result)

您可以使用以上逻辑来实现填充。

答案 1 :(得分:0)

您使用的是numpy吗?如果可以的话,可以通过切片数组来实现

import numpy as np

random_array_5_20 = np.random.rand(5, 20)

padded_array_20_20 = np.zeros((20, 20))

padded_array_20_20[:5, :20] = random_array_5_20

答案 2 :(得分:0)

另一种方法。 这里的a是您已经拥有的数组。

import numpy as np
a = np.random.rand(5,20)
za = np.zeros((1, 20))
while a.shape[0] < 20:
    a = np.concatenate((a,za))