Eingabe: Zufallsvektor X = xi, i = 1..n.
Vektor der Mittelwerte für X = meanxi, i = 1..n.
Ausgabe: Kovarianzmatrix Sigma (n * n).
Berechnung:
1) finde alle cov (xi, xj) = 1 / n * (xi-meanxi) * (xj-meanxj), i, j = 1..n
2) Sigma (i, j) = cov (xi, xj), symmetrische Matrix.
Ist dieser Algorithmus korrekt und hat keine Nebenwirkungen?
Jede xi
sollte ein Vektor (Zufallsvariable) sein mit eigener Varianz und Mittelwert.
Die Kovarianzmatrix ist symmetrisch, Sie müssen also nur die Hälfte davon berechnen (und den Rest kopieren) und die Varianz von xi an der Hauptdiagonale haben.
%Vor%wo Varianz (var) von xi:
%Vor%und Kovarianz (cov)
%Vor% wobei r(xi, xj)
Pearson-Produkt-Moment-Korrelationskoeffizient
BEARBEITEN
oder, weil cov (X, Y) = E (X * Y) - E (X) * E (Y)
wobei .*
Matlab-ähnliche elementweise Multiplikation ist.
Also, wenn x = [x1, x2]
, y = [y1, y2]
dann z = x.*y = [x1*y1, x2*y2]
;
Tags und Links algorithm covariance statistics matrix