NumPy와에서, 당신은 편집 할 수있는 배열의 뷰를 얻을 수 있습니다 . 귀하의 예제에서는이 작업을 수행 할 수 있습니다
import numpy as np
nodes = np.array([[1, 2], [2, 3], [3, 4], [4, 5], [5, 6]])
node_idx = np.array([0, 3])
nodes[node_idx] = np.array([[1, 5], [2, 5]])
nodes
출력 :
array([[1, 5],
[2, 3],
[3, 4],
[2, 5],
[5, 6]])
당신은 또한 부울 배열로 교체 할 수 있습니다 : 같은 결과를
import numpy as np
nodes = np.array([[1, 2], [2, 3], [3, 4], [4, 5], [5, 6]])
node_mask = np.array([True, False, False, True, False])
nodes[node_mask] = np.array([[1, 5], [2, 5]])
nodes
합니다. 물론, 이것은 당신이이 같은 마술을 할 수 있다는 것을 의미합니다 : [1, 5]
와 3
동일 첫 번째 요소로 모든 행을 대체
import numpy as np
nodes = np.array([[1, 2], [2, 3], [3, 4], [4, 5], [5, 6]])
nodes[nodes[:, 0] == 3] = [1, 5]
nodes
합니다. 출력 :
array([[1, 2],
[2, 3],
[1, 5],
[4, 5],
[5, 6]])
numpy 배열로 저장해야합니까? – Tai
원하는 결과에 대해 정상적인 [슬라이싱/색인 생성] (https://www.tutorialspoint.com/numpy/numpy_indexing_and_slicing.htm)이 작동하지 않습니까? – MattR
마스크를 사용하여 변경할 위치를 나타 냈습니까? 'nn'에있는 모든 참조를 똑같이 변경하려면 실행 가능한 옵션이 될 수 있습니다. –