mean
, median
et st_deviation
) qui
s'appliquent à l'ensemble d'une matrice, à ses lignes
ou à ses colonnes selon l'option.
Attention, st_deviation
calcule la racine carrée de la
variance non biaisée.
La fonction corr
retourne les corrélations ou covariances d'une ou deux
séries chronologiques, mais ne s'applique pas directement
au calcul de la matrice de covariance d'un échantillon
vectoriel. Les fonctions ci-dessous calculent les matrices de covariance
et de corrélation
pour un échantillon de taille de vecteurs de dimension ,
donné sous forme d'une matrice à lignes et colonnes.
function c=covariance(echant) // retourne la matrice de covariance // de l'echantillon echant. L'entree est une matrice // a n lignes (individus) et d colonnes (variables) moyenne = mean(echant,"r"); echcent = echant - ones(size(echant,"r"),1)*moyenne; c=(echcent'*echcent)/size(echant,"r"); function c=correlation(echant) // retourne la matrice de correlation // de l'echantillon echant. L'entree est une matrice // a n lignes (individus) et d colonnes (variables) cov=covariance(echant); ectinv=diag((1)./sqrt(diag(cov))); c=ectinv*cov*ectinv;Supposons que ces deux fonctions soient dans le fichier
covariance.sci
.
getf("covariance.sci"); M=[0;0;0]; S=[1,0.5,0.9 ; 0.5,1,0.3 ; 0.9,0.3,1]; v=grand(10000,"mn",M,S); cov_estimee = covariance(v') cov_estimee-S cor_estimee = correlation(v') cor_estimee-S