[PYTHON] Examiner la relation entre deux variables (1)

Examiner le coefficient de corrélation

La première base de l'analyse des données est la collecte de données intéressantes. L'intérêt des statistiques n'est que l'ensemble de la situation et de la tendance, et la base pour la connaître est le modèle de distribution et de statistiques (moyenne et variance).

L'examen du coefficient de corrélation est l'une des bases. J'ai beaucoup parlé de régression linéaire et de coefficient de corrélation auparavant. Explorons plus loin ici et explorons les détails.

Collectez des données et faites un diagramme

En pratiquant un certain sport, j'ai vérifié les valeurs de puissance de lancer et de préhension des élèves du secondaire.

étudiant Poignée Lancer de balle
A 26 16
B 26 11
C 26 14
D 27 16
E 28 18
F 29 16
G 32 18
H 29 21
I 24 14
J 26 19

Cela semble se répéter plusieurs fois, mais les statistiques commencent par la collecte de données. Dans cet exemple, j'ai enregistré et tabulé les performances sportives de chaque élève. Cependant, la relation n'est pas claire à partir du seul tableau. Alors je vais faire un chiffre. Vous pouvez avoir une idée approximative de la relation entre les deux variables x et y en dessinant un diagramme de dispersion.

Maintenant, dessinons un diagramme de dispersion en utilisant les connaissances acquises jusqu'à présent.

import numpy as np
import matplotlib.pyplot as plt
X = np.array( [26, 26, 26, 27, 28, 29, 32, 29, 24, 26] )
Y = np.array( [16, 11, 14, 16, 18, 16, 18, 21, 14, 19] )
plt.plot(X, Y, 'o', color="blue")
plt.show()
plt.savefig("image.png ")

image.png

Il semble y avoir une corrélation positive en quelque sorte.

Trouvez le coefficient de corrélation

Cela a été expliqué jusqu'à présent, mais la prochaine chose que je veux savoir est de quantifier la force de la relation entre les deux variables x et y. C'est le coefficient de corrélation.

Pour calculer concrètement le coefficient de corrélation, la formule de covariance suivante est utilisée.

Cov(x,y) = \frac 1 N \sum_{k=1}^N X_kY_k - \overline{x} \overline{y}

Vous vous en souvenez? Le coefficient de corrélation peut être obtenu comme suit.

r(x,y) = \frac {Cov(x,y)} {\sigma(x)\sigma(y)}

Donc

r(x,y) = \frac {10 * 4481 - 273 * 163} {\sqrt{(10*7499-273^2)(10*2731-163^2)}} = 0.53

Ce sera.

Ce calcul manuel est-il correct? Écrivons du code et essayons-le.

corr = np.corrcoef(X, Y)[0,1]
print("Le coefficient de corrélation entre X et Y est%(corr)s" %locals() )
#=>Le coefficient de corrélation entre X et Y est de 0.532109266822

Comme prévu, il s'agit de NumPy. J'ai eu la réponse avec une seule ligne de code.

Résumé

J'ai commencé à examiner la relation entre les deux variables, dont on peut dire qu'elles sont à la base des statistiques. Cette fois, j'ai calculé le diagramme de dispersion et le coefficient de corrélation comme point de départ.

Recommended Posts

Examiner la relation entre deux variables (1)
Calculez la correspondance entre deux divisions
Estimer le délai entre deux signaux
La relation subtile entre Gentoo et pip
À propos de la relation entre Git et GitHub
Modélisation-estimation de Bayes de la différence entre les deux groupes-
Étudier la relation entre les dépenses de crème glacée et la température
Examiner le double problème
Calculez le décalage horaire entre deux colonnes avec Pandas DataFrame
Comprendre la différence entre l'affectation cumulative aux variables et l'affectation cumulative aux objets
[Statistiques] Visualisons la relation entre la distribution normale et la distribution du chi carré.
J'ai étudié la relation entre le LSTM avec état de Keras et l'état caché