2016-12-10 2 views
-1

대칭 행렬 (예 : M <- matrix(1:4, ncol = 2))을 가지고 있고 대각선을 벗어난 요소를 0으로 설정하고 싶습니다. diag(diag(M), ncol = ncol(M))보다 똑똑한 방법이 있습니까?대칭 행렬을 대각선 행렬로 만들 R

참고 : diagdiag(M, ncol = ncol(M))의 usssage를 지원하지 않으며 더 나은 또는 더 나쁜 경우

+0

'upper.tri (M) <- 0; lower.tri (M) <- 0' 내가 생각할 수있는 첫 번째 것입니다. –

+0

제목이 약간 잘못되었습니다. 행렬의 대각선에 0을 넣는 것이 좋습니다. – DJJ

+1

오해의 소지가 있다고 생각하지 않습니다. 대각 행렬은 대각선이 아닌 원소가 0 인 행렬입니다. – norbertk

답변

0

확실하지 diag(M, as.matrix = TRUE) 등과 같은 옵션을 가지고 있지 않지만, 당신이 행렬의 요소 현명한 제품을 계산할 수 대응하는 단위 행렬

관련 문제