Section : Statistiques en Scilab
Précédent : Représentations graphiques.
Suivant : Analyse de données
Les calculs de moyennes, médianes et écart-types
s'effectuent par des fonctions vectorielles
(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
© B. Ycart (2001)