У меня есть массив, и я хочу пройтись по его значениям, чтобы обновить его следующим образом:
import numpy as np
arr=np.ones((5,7))
for i in range(1,arr.shape[0]-1):
for j in range(1,arr.shape[1]-1):
arr[i,j]=arr[i+1,j]+arr[i,j+1]
В результате, по желанию,
[[1. 1. 1. 1. 1. 1. 1.]
[1. 2. 2. 2. 2. 2. 1.]
[1. 2. 2. 2. 2. 2. 1.]
[1. 2. 2. 2. 2. 2. 1.]
[1. 1. 1. 1. 1. 1. 1.]]
Однако дляциклы довольно медленные, и я хотел бы знать, есть ли способ сделать это более эффективным.
Редактировать: ввод не всегда np.ones((5,7))
, это будет вообще что-то более неоднородное.