У меня есть двумерный массив numpy, и у меня есть массивы строк и столбцов, которые должны быть установлены в определенное значение. Рассмотрим следующий пример
a = array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
Я хочу изменить записи в строках [0,2] и столбцах [1,2]. Это должно привести к следующему массиву
a = array([[1, 2, 0],
[4, 5, 0],
[7, 8, 9]])
Я сделал следующее, и это привело к изменению каждой последовательности столбца в каждой строке
rows = [0,1]
cols = [2,2]
b=a[numpy.ix_(rows,columns)]
В результате появился следующий массив, изменяющий каждый столбец указанного массива
array([[1, 0, 0],
[4, 5, 6],
[7, 0, 0]])
Кто-нибудь, пожалуйста, дайте мне знать, как это сделать?
Спасибо большое
РЕДАКТИРОВАТЬ: Следует отметить, что строки и столбцы, по всей вероятности, являются секвенциями. Фактически речь идет о том, что они могут быть произвольными и в любом порядке. если это строки = [a, b, c] и cols = [nxz], то я хочу изменить ровно три элемента в местах (a, n), (b, x), (c, z).