행렬 D
의 대각선을 1,2,3,4
으로 대체하는 것이 재미 있습니다.행렬의 대각선을 대체하십시오
D(eye(4)==1) = 1:4
또는 그것을 일반화 :
A=[1,2,3,4,2,3,4,5; 3,4,5,6,4,5,6,7];
D=[A;A];
D=[D D]; % size of matrix [4x16] %
행렬 D
의 대각선을 1,2,3,4
으로 대체하는 것이 재미 있습니다.행렬의 대각선을 대체하십시오
D(eye(4)==1) = 1:4
또는 그것을 일반화 :
A=[1,2,3,4,2,3,4,5; 3,4,5,6,4,5,6,7];
D=[A;A];
D=[D D]; % size of matrix [4x16] %
1로 1을 시작 증가 정수로 주 대각선을 설정하려면 : 이 매트릭스 D
입니다
n = min(size(D));
D(eye(n)==1) = 1:n;
참고 여기에 ==1
은 단위 행렬 인 eye(n)
의 출력을 논리 유형으로 변환합니다.
편집 :
이 모든 대각선으로 무엇을 의미하는지에 그냥 추측하지만 여기 간다 :
n = size(D,1);
m = size(D,2);
I = repmat(eye(min([n,m])), ceil(n/m), ceil(m/n));
I = I(1:n, 1:m)==1
d = repmat(1:min([n,m]), 1, max([ceil(n/m), ceil(m/n)]));
d = d(1:max(m,n));
D(I) = d
는 u는 대각선으로 무엇을 의미합니까? D는 정사각형이 아닌 행렬입니다. – Kishore
@Kishore, [주 대각선] (http://en.wikipedia.org/wiki/Main_diagonal)은 비 - 정방 행렬에 대해서도 정의됩니다. –