Беглого взгляда, и я не мог отказаться от каких-либо функций, хотя это не факт любых средств.
Однако, работая его с нуля, и предполагая, что вы имели в виду матрицу, такие как:
% 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
в математических обозначениях, это натуральные числа. Если да, то вы можете использовать следующий код.
Среднее:
meanX = sum(P,1) * (1:size(P,2))';
meanY = sum(P,2)' * (1:size(P,1))';
Для центрального момента K,L
(K
correspnding к X
и L
, соответствующие Y
):
[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
.
Спасибо, это было очень полезно! –