如何在另一个矩阵中间插入一个矩阵

问题描述

我在 Python 中工作。 我有一个名为 Y = np.random.rand(10,10) 的矩阵和一个名为 X=np.zeros ((5,5)) 的矩阵。 我定义: y_插入=2 x_插入=3 我想在 Y 上的位置 (x_insert,y_insert) 上插入矩阵 X。所以结果应该是一个 10 x 10 的矩阵,填充随机数,除了 (2,3) 和 (6,7) 之间的矩阵应该包含 0。 如何实现?

到目前为止我已经尝试过:

mscorlib

解决方法

您需要做的就是处理要覆盖的 Y 的子矩阵,然后将 X 分配给它:

Y[x_insert : x_insert + 5,y_insert : y_insert + 5] = X

或者,对于更一般的情况:

Y[x_insert : x_insert + X.shape[0],y_insert : y_insert + X.shape[1]] = X