Обновление многомерного массива Numpy Python

#python #arrays #numpy #multidimensional-array #indexing

Вопрос:

Я пытаюсь добавить только в правую часть массива indx , но я хочу сохранить левую часть массива. Как бы я смог получить Expected Output это .

Код:

 import numpy as np

number = 3
indx=np.array([[    0,     1],
 [    1,   765],
 [    0,  4355],
 [    1,  9364],
 [    0, 12110],
 [    1, 15233],
 [    0, 16246],
 [    1, 18889]])
indx = indx[:,1]   number
 

Выход:

 [    4   768  4358  9367 12113 15236 16249 18892]
 

Ожидаемые результаты

 [[    0     4]
 [    1   768]
 [    0  4358]
 [    1  9367]
 [    0 12113]
 [    1 15236]
 [    0 16249]
 [    1 18892]]
 

Комментарии:

1. indx[:,1] = number или убедитесь, что вы назначаете только столбец indx[:,1] = indx[:,1] number

Ответ №1:

 import numpy as np
 indx=np.array(
 [[    0,     1], 
 [    0,  4355],
 [    1,  9364],
 [    0, 12110],
 [    1, 15233],
 [    0, 16246],
 [    1, 18889]])
indx[:,1] = indx[:,1]   3
print(indx)
[[    0     4]
 [    1   768]
 [    0  4358]
 [    1  9367]
 [    0 12113]
 [    1 15236]
 [    0 16249]
 [    1 18892]]