2012-06-18 2 views
1

Matlab에서 2 차원 이산 분포 (N² -> R)를 제공하는 매트릭스가 있습니다.매트릭스는 2D 확률 분포로서 : 중심 모멘트를 얻으십시오

중앙 모멘트와 평균을 제공하는 Matlab (R2011b, 통계 도구 상자 포함)에 기본 제공 함수가 있습니까? 그것들이 (R2-> R)의 기능을 위해 존재한다면 그것은 역시 좋다. 그렇지 않으면 나는 그 (것)들을 직접 건설해야 할 것이다, 그러나 나는 바퀴를 재발 명하고 싶지 않다.

당신에게

답변

2

빠른 모습을 감사하고이 어떤 방법으로 사실이 아니지만 나는 어떤 기능을 설정하지 못했습니다.

그러나 처음부터 운동하고 같은 행렬을 의미 가정 :

% x=1 x=2 x=3 
P = [ 0.1 0.2 0.1  % y = 1 
     0.1 0.1 0.2  % y = 2 
     0.0 0.0 0.2 ]  % y = 3 

그리고이 조인트 이산 분포 (조인트 확률 질량 함수)를 설명하는 것을 의미한다. 즉, (X,Y)의 항목에는 (X,Y) 확률이 포함됩니다.

또한 N의 사용으로 자연수를 의미하는 것으로 가정합니다. 그렇다면 다음 코드를 사용할 수 있습니다.

평균 (Y 대응 X에 correspnding KL)

meanX = sum(P,1) * (1:size(P,2))'; 
meanY = sum(P,2)' * (1:size(P,1))'; 
중앙 모멘트 K,L 들어

:

[X,Y] = meshgrid(1:size(P,2),1:size(P,1)); 
integrandXY_KL = (X - meanX).^K .* (Y-meanY).^L .* P; 
momentXY_KL = sum(integrandXY_KL(:)); 

와 X의 값이 임의 인 경우에는 상기를 일반화 (그리고 자연수가 아닌) 다음과 같습니다. Xvals = [ 1 2 4 ]Yvals = [ 4 5 6 ] 인 경우 위의 모든 작업이 계속 작동하면 1:size(P,2)의 모든 항목을 Xvals으로 바꾸고 모든 발생을 1:size(P,1)으로 바꾸고 Yvals으로 바꾸십시오.

+0

감사합니다. 매우 도움이되었습니다. –