"매우 간단한"문제를 해결하려고합니다. 파이썬에서는 그렇게 간단하지 않습니다. 다음과 같이 BI는 매트랩 B. 와의 특정 요소를 대체 할 대형 행렬 A와 또 다른 작은 행렬을 것입니다 감안할 때 :파이썬에서 특정 좌표의 행렬 대체 요소
Given A, row_coord = [1,5,6] col_coord = [2,4], and a matrix B of size(3X2), A[row_coord, col_coord] = B
를 파이썬에서 나는 세트를 생성하는 itertools
에서 product(row_coord, col_coord)
을 사용하려 A에서 액세스 할 수 있어야하지만 작동하지 않는 모든 인덱스 중. 서브 매트릭스 대체에 대한 모든 예는 블록 단위 row_coord = col_coord 예제를 참조하십시오. http://comments.gmane.org/gmane.comp.python.numeric.general/11912을 제외한 구체적인 내용은 내가 직면 한 문제와 관련이있는 것으로 보이며 링크의 코드가 작동하지 않습니다.
참고 : double for-loop를 통해 필요한 것을 구현할 수 있다는 것을 알고 있습니다. 그러나 이러한 루프를 반복하면 9 초가 걸리므로이를 구현하는 더 빠른 방법을 찾고 있습니다.
도움이 될 것입니다.
몇 가지 예제 행렬 및 벡터를 제공 할 수 있습니까? 그들은 시험 할만큼 충분히 커질 필요가 없습니다. – Ffisegydd
물론, A = np.zeros ([20,20]) col_coord = [0,1,3] row_coord = [1,2] B = 1 (B를 상수로 설정합시다). 이 문제를 해결하는 간단한 방법은 다음과 같습니다. in a row_coord : for col_coord : A [row_coord [a], col_coord [b]] = 1 그러나 나는 intertools 유틸리티를 사용하여 더 빠르게 만들고 싶습니다. . 고마워요 :-) – user3861925