У меня есть несколько двумерных массивов, использующих numpy, и я хочу скопировать субрегионы из одного в другой.Например, если я начну с:
dest = numpy.zeros((4, 4))
# array([[0., 0., 0., 0.],
# [0., 0., 0., 0.],
# [0., 0., 0., 0.],
# [0., 0., 0., 0.]])
src = numpy.ones((4, 4))
# array([[1., 1., 1., 1.],
# [1., 1., 1., 1.],
# [1., 1., 1., 1.],
# [1., 1., 1., 1.]])
, я хочу как-то сказать, что src
следует скопировать в dest
в (2,1)
, чтобы источник выглядел следующим образом:
array([[0., 0., 0., 0.],
[0., 0., 1., 1.],
[0., 0., 1., 1.],
[0., 0., 1., 1.]])
Или, если (-3, 0)
, то:
array([[1., 0., 0., 0.],
[1., 0., 0., 0.],
[1., 0., 0., 0.],
[1., 0., 0., 0.]])
Я могу сделать старый добрый цикл с двумя индексами, чтобы сделать это, но я надеялся, что у numpy есть какая-то умная магия, которая это сделала.Я посмотрел на take
, но не мог понять, как сделать это инструментом для этой работы.