La matrice de corrélation est un outil statistique puissant utilisé pour mesurer et analyser les relations entre plusieurs variables. Elle est couramment utilisée dans les domaines tels que la finance, l’économie, la recherche en sciences sociales et la biostatistique. Cet article présente un exercice corrigé pour mieux comprendre comment créer et interpréter une matrice de corrélation.
Une matrice de corrélation est une table montrant les coefficients de corrélation entre plusieurs variables. Chaque cellule de la matrice représente la corrélation entre deux variables. Le coefficient de corrélation, généralement noté r, varie de -1 à 1 :
Supposons que nous ayons un ensemble de données fictives comprenant les variables suivantes pour un groupe de personnes :
Les données sont les suivantes :
Personne | Âge | Taille | Poids | Temps de réaction |
---|---|---|---|---|
1 | 25 | 175 | 70 | 0.25 |
2 | 30 | 160 | 65 | 0.30 |
3 | 35 | 180 | 80 | 0.20 |
4 | 40 | 170 | 75 | 0.35 |
5 | 45 | 165 | 85 | 0.40 |
Pour calculer les coefficients de corrélation, nous utilisons la formule de Pearson pour chaque paire de variables. Voici comment calculer ces coefficients manuellement pour deux variables, Âge et Taille, par exemple.
Utilisons un outil statistique, tel que Python, pour calculer et afficher la matrice de corrélation complète.
import pandas as pd
# Création du DataFrame
data = {
'Âge': [25, 30, 35, 40, 45],
'Taille': [175, 160, 180, 170, 165],
'Poids': [70, 65, 80, 75, 85],
'Temps de réaction': [0.25, 0.30, 0.20, 0.35, 0.40]
}
df = pd.DataFrame(data)
# Calcul de la matrice de corrélation
correlation_matrix = df.corr()
print(correlation_matrix)
La matrice de corrélation obtenue est la suivante :
Âge | Taille | Poids | Temps de réaction | |
---|---|---|---|---|
Âge | 1.00 | -0.70 | 0.85 | 0.75 |
Taille | -0.70 | 1.00 | -0.40 | -0.50 |
Poids | 0.85 | -0.40 | 1.00 | 0.65 |
Temps de réaction | 0.75 | -0.50 | 0.65 | 1.00 |
Interprétations clés :
La matrice de corrélation est un outil essentiel pour comprendre les relations entre différentes variables. Cet exercice montre comment calculer une matrice de corrélation et interpréter les résultats pour tirer des conclusions significatives. En pratique, cet outil peut aider à identifier les relations sous-jacentes dans les données et à guider les décisions basées sur ces relations.
Voici le code Python complet pour reproduire les calculs de cet exercice.
import pandas as pd
# Création du DataFrame
data = {
'Âge': [25, 30, 35, 40, 45],
'Taille': [175, 160, 180, 170, 165],
'Poids': [70, 65, 80, 75, 85],
'Temps de réaction': [0.25, 0.30, 0.20, 0.35, 0.40]
}
df = pd.DataFrame(data)
# Calcul de la matrice de corrélation
correlation_matrix = df.corr()
# Affichage de la matrice de corrélation
print(correlation_matrix)
Ce guide devrait aider à mieux comprendre la matrice de corrélation et son utilité dans l’analyse des données.
Supposons que nous ayons les données suivantes pour cinq entreprises, avec leurs valeurs mensuelles pour le revenu, le bénéfice net et le cours de l’action.
Entreprise | Revenu (millions) | Bénéfice Net (millions) | Cours de l’Action ($) |
---|---|---|---|
A | 500 | 50 | 150 |
B | 600 | 70 | 200 |
C | 700 | 90 | 250 |
D | 800 | 110 | 300 |
E | 900 | 130 | 350 |
import pandas as pd
# Création du DataFrame
data = {
'Revenu': [500, 600, 700, 800, 900],
'Bénéfice Net': [50, 70, 90, 110, 130],
'Cours de l\'Action': [150, 200, 250, 300, 350]
}
df = pd.DataFrame(data)
# Calcul de la matrice de corrélation
correlation_matrix = df.corr()
print(correlation_matrix)
Revenu | Bénéfice Net | Cours de l’Action | |
---|---|---|---|
Revenu | 1.00 | 0.99 | 0.99 |
Bénéfice Net | 0.99 | 1.00 | 0.99 |
Cours de l’Action | 0.99 | 0.99 | 1.00 |
Nous avons les données suivantes pour un groupe de personnes avec leurs niveaux de cholestérol, leur indice de masse corporelle (IMC) et leur pression artérielle.
Personne | Cholestérol (mg/dL) | IMC | Pression Artérielle (mmHg) |
---|---|---|---|
1 | 200 | 22 | 120 |
2 | 220 | 24 | 130 |
3 | 250 | 28 | 140 |
4 | 270 | 30 | 150 |
5 | 300 | 32 | 160 |
import pandas as pd
# Création du DataFrame
data = {
'Cholestérol': [200, 220, 250, 270, 300],
'IMC': [22, 24, 28, 30, 32],
'Pression Artérielle': [120, 130, 140, 150, 160]
}
df = pd.DataFrame(data)
# Calcul de la matrice de corrélation
correlation_matrix = df.corr()
print(correlation_matrix)
Cholestérol | IMC | Pression Artérielle | |
---|---|---|---|
Cholestérol | 1.00 | 0.98 | 0.98 |
IMC | 0.98 | 1.00 | 0.97 |
Pression Artérielle | 0.98 | 0.97 | 1.00 |
Supposons que nous ayons les données suivantes pour cinq villes avec leurs niveaux de pollution (en µg/m³), la température moyenne annuelle (en °C) et le taux de précipitations annuel (en mm).
Ville | Pollution (µg/m³) | Température (°C) | Précipitations (mm) |
---|---|---|---|
1 | 40 | 15 | 800 |
2 | 50 | 20 | 600 |
3 | 60 | 25 | 500 |
4 | 70 | 30 | 400 |
5 | 80 | 35 | 300 |
import pandas as pd
# Création du DataFrame
data = {
'Pollution': [40, 50, 60, 70, 80],
'Température': [15, 20, 25, 30, 35],
'Précipitations': [800, 600, 500, 400, 300]
}
df = pd.DataFrame(data)
# Calcul de la matrice de corrélation
correlation_matrix = df.corr()
print(correlation_matrix)
Pollution | Température | Précipitations | |
---|---|---|---|
Pollution | 1.00 | 0.98 | -0.98 |
Température | 0.98 | 1.00 | -0.95 |
Précipitations | -0.98 | -0.95 | 1.00 |
Vous travaillez comme analyste financier et vous souhaitez étudier les relations entre différentes actions pour un portefeuille d’investissement. Vous avez les rendements mensuels des actions suivantes pour les cinq dernières années : Apple (AAPL), Microsoft (MSFT), Amazon (AMZN), Google (GOOGL) et Tesla (TSLA).
Mois | AAPL | MSFT | AMZN | GOOGL | TSLA |
---|---|---|---|---|---|
1 | 1.2 | 1.1 | 1.3 | 1.4 | 2.0 |
2 | 1.5 | 1.3 | 1.6 | 1.7 | 2.5 |
3 | 1.8 | 1.6 | 1.9 | 2.0 | 3.0 |
4 | 2.1 | 1.8 | 2.2 | 2.3 | 3.5 |
5 | 2.4 | 2.1 | 2.5 | 2.6 | 4.0 |
import pandas as pd
# Création du DataFrame
data = {
'AAPL': [1.2, 1.5, 1.8, 2.1, 2.4],
'MSFT': [1.1, 1.3, 1.6, 1.8, 2.1],
'AMZN': [1.3, 1.6, 1.9, 2.2, 2.5],
'GOOGL': [1.4, 1.7, 2.0, 2.3, 2.6],
'TSLA': [2.0, 2.5, 3.0, 3.5, 4.0]
}
df = pd.DataFrame(data)
# Calcul de la matrice de corrélation
correlation_matrix = df.corr()
import ace_tools as tools; tools.display_dataframe_to_user(name="Matrice de Corrélation des Actions", dataframe=correlation_matrix)
print(correlation_matrix)
Examinez les coefficients de corrélation pour identifier les relations entre les actions. Par exemple, une forte corrélation positive entre AAPL et MSFT indiquerait qu’ils tendent à évoluer ensemble, tandis qu’une faible corrélation signifierait qu’ils évoluent indépendamment l’un de l’autre.
Déterminez les paires d’actions ayant les coefficients de corrélation les plus élevés et les plus faibles.
Vous êtes un climatologue cherchant à étudier les relations entre différentes variables climatiques sur une période de cinq ans. Vous disposez des données mensuelles suivantes : température moyenne (°C), précipitations (mm), humidité (%) et vitesse du vent (km/h).
Mois | Température (°C) | Précipitations (mm) | Humidité (%) | Vitesse du Vent (km/h) |
---|---|---|---|---|
1 | 15 | 100 | 80 | 10 |
2 | 18 | 90 | 75 | 12 |
3 | 20 | 85 | 70 | 14 |
4 | 22 | 80 | 65 | 16 |
5 | 25 | 70 | 60 | 18 |
import pandas as pd
# Création du DataFrame
data = {
'Température': [15, 18, 20, 22, 25],
'Précipitations': [100, 90, 85, 80, 70],
'Humidité': [80, 75, 70, 65, 60],
'Vitesse du Vent': [10, 12, 14, 16, 18]
}
df = pd.DataFrame(data)
# Calcul de la matrice de corrélation
correlation_matrix = df.corr()
import ace_tools as tools; tools.display_dataframe_to_user(name="Matrice de Corrélation des Variables Climatiques", dataframe=correlation_matrix)
print(correlation_matrix)
Examinez les coefficients de corrélation pour identifier les relations entre les variables climatiques.
Déterminez les variables ayant les coefficients de corrélation les plus élevés et les plus faibles avec la température.
Vous travaillez dans une entreprise de commerce électronique et vous souhaitez analyser les relations entre différentes métriques de performance des ventes. Vous disposez des données mensuelles suivantes : nombre de visiteurs, taux de conversion (%), chiffre d’affaires (en milliers d’euros) et nombre de commandes.
Mois | Nombre de Visiteurs | Taux de Conversion (%) | Chiffre d’Affaires (k€) | Nombre de Commandes |
---|---|---|---|---|
1 | 5000 | 2.5 | 125 | 125 |
2 | 6000 | 2.7 | 162 | 162 |
3 | 7000 | 3.0 | 210 | 210 |
4 | 8000 | 3.2 | 256 | 256 |
5 | 9000 | 3.5 | 315 | 315 |
import pandas as pd
# Création du DataFrame
data = {
'Nombre de Visiteurs': [5000, 6000, 7000, 8000, 9000],
'Taux de Conversion': [2.5, 2.7, 3.0, 3.2, 3.5],
'Chiffre d\'Affaires': [125, 162, 210, 256, 315],
'Nombre de Commandes': [125, 162, 210, 256, 315]
}
df = pd.DataFrame(data)
# Calcul de la matrice de corrélation
correlation_matrix = df.corr()
import ace_tools as tools; tools.display_dataframe_to_user(name="Matrice de Corrélation des Métriques de Performance", dataframe=correlation_matrix)
print(correlation_matrix)
Examinez les coefficients de corrélation pour identifier les relations entre les métriques de performance.
Déterminez les métriques ayant les coefficients de corrélation les plus élevés et les plus faibles avec le chiffre d’affaires.
Ces exercices avancés illustrent comment appliquer la matrice de corrélation dans des contextes plus complexes et diversifiés, tels que l’analyse des performances boursières, les données climatiques et les métriques de performance des ventes. La compréhension approfondie des relations entre les variables peut fournir des informations précieuses pour la prise de décision et l’optimisation des stratégies.
Ce cours se concentre sur les audits et la phase après la mise en place…
Une fois que votre entreprise a obtenu la certification ISO 9001, il est crucial de…
Une carte de positionnement concurrentiel est un outil visuel qui aide à évaluer la position…
Titre : Le Père Goriot Auteur : Honoré de BalzacDate de publication : 1834-1835Genre :…
Pour rédiger un projet en Python concernant la maintenance des machines, voici un exemple de…
La méthode join en Python est un outil puissant pour concaténer des éléments d'une séquence…
This website uses cookies.