У меня есть 2D-массив, я хочу, чтобы элемент i
массива в каждой строке был уменьшен на элемент i-1
в той же строке
Я пробовал этот код:
data = np.arange(12).reshape(3,4)
print(data)
for row in data:
for cell in row:
data[cell] = data[cell]-data[cell-1]
print(data)
, и я получил вывод, подобный этому
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]
Traceback (most recent call last):
File "D:/testing/test.py", line 55, in <module>
data[cell] = data[cell]-data[cell-1]
IndexError: index -8 is out of bounds for axis 0 with size 3
, и я хочу вывод, подобный этому
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]
[[1 1 1]
[1 1 1]
[1 1 1]]
основной процесс был data[i] = data[i]-data[i-1]
. Мне нужен этот процесс для огромного масштаба данных, таких как более 1024x1024, поэтому мне нужно что-то эффективное