Pourquoi ne corrcoef retour d'une matrice?
Il me semble étrange que les np.corrcoef retourne une matrice.
correlation1 = corrcoef(Strategy1Returns,Strategy2Returns)
[[ 1. -0.99598935]
[-0.99598935 1. ]]
Personne ne sait pourquoi c'est le cas et si c'est possible de retourner qu'une seule valeur dans le sens classique du terme?
- pouvez-vous cocher la meilleure réponse ci-dessous que le respect?
Vous devez vous connecter pour publier un commentaire.
Qu'elle permet de calculer les coefficients de corrélation de >2 ensembles de données, par exemple
Ici, nous pouvons obtenir le coefficient de corrélation de a,b (0.995), a,c (-0.981) et b,c (-0.972) à la fois. Les deux ensembles de données de cas est un cas particulier de N-ensemble de données de classe. Et sans doute il est préférable de garder le même type de retour. Depuis la "une valeur" peut être obtenu simplement avec
il n'y avait pas de raison de créer le cas particulier.
corrcoef
renvoie la matrice de covariance normalisée.La matrice de covariance est la matrice
Normalisé, cela vous donnera de la matrice:
correlation1[0, 0 ]
est la corrélation entreStrategy1Returns
et lui-même, qui doit être de 1. Vous voulez justecorrelation1[ 0, 1 ]
.La matrice de corrélation est le moyen standard pour exprimer les corrélations entre l'arbitraire d'un nombre fini de variables. La matrice de corrélation de N vecteurs de données est symétrique N × N de la matrice avec l'unité de la diagonale. Seulement dans le cas N = 2 cette matrice ont un paramètre libre.
Envisager l'utilisation de matplotlib.cbook pièces
par exemple:
La fonction de Corrélation de numpy fonctionne avec 2 tableaux 1D que vous souhaitez mettre en corrélation et en retourne une valeur de corrélation.
Vous pouvez utiliser la fonction suivante pour retourner uniquement le coefficient de corrélation: