Matrice qui devrait être symétrique n'est pas symétrique ( pb d'arrondis de calcul?)
Salut, c'est déja ma troisième question (vba me pose beaucoup de problèmes) j'espère ne pas abuser de la gentillesse des membres de ce forum! ^^.
Mon problème est cette fois que quand je calcule une matrice de covariance celle-ci n'est pas rigoureusement symétrique, exemple le coin supérieur droit est de la forme
1 0,0005686 0,000789
0,000572 2 0,000326
0,000742 0,000295 3
Donc je crois qu'il y a un problème avec la précision des calculs, mais je ne vois pas très bien quand comment puisque de toute facon vba est sensé faire les même approxiamtions de parts et d'autres non?
Je vous fournis mon code:
' moy(int i) calcul la moyenne sur la colonne i
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
Sub covariance()
Dim help As Double
Dim aux As Double
Dim rep As Double
For m = 1 To 11
For n = 1 To 11
Feuil4.Activate
Dim ko As Double
Dim koko As Double
ko = moy(m)
koko = moy(n)
For i = 665 To 1353
help = Cells(i, m) - ko
aux = Cells(i, n) - koko
rep = rep + help * aux
Next
rep = rep / (1353 - 665 + 1)
Feuil6.Activate
Cells(m, n) = rep
Next
Next
End Sub |