Déterminer s'il y a un lien entre des variables quantitatives et/ou qualitatives/catégorielles

Un tuto simple pour débuter dans l'analyse de données sous python

1- Etablir un lien entre deux variables quantitatives

Exemple : y a-t-il un lien entre le poids et la taille ?

Etablir un lien entre deux variables, c'est faire une corrélation.

  • Chargeons un jeu de données


import seaborn as sns

# Charger le jeu de données iris

iris = sns.load_dataset('iris')

  • Je peux faire une matrice de corrélation

mycor = iris.corr() ; print(mycor)

  • Pour faire un test de corrélation précis avec p-value (l'équivalent de cor.test() de R), il faut faire appel au modul scipy

import scipy

my_cor, pval = scipy.stats.pearsonr(iris.iloc[:,0],iris.iloc[:,1])

# même si ma corrélation est faible (valeur <<1), la valeur 2 montre une p-value très significative si pval est inférieur au moins à 0,05

print(my_cor)

print(pval)


2- Etablir un lien entre une variable quantitative et une variable qualitative

Exemple : y a-t-il un lien entre le poids et le sexe ?

Etablir une relative entre une variable quantitative et une variable qualitative, c'est faire des comparaisons de moyennes ou de médianes.

Il existe pour cela de nombreux tests dont le plus connu est le test de Student qui ne s'applique que si on dispose de deux catégories dont les données suivent la loi normale.

Lorsqu'on a plusieurs catégories normales, on songera à appliquer le test de Newman-Keuls, mais dans un cas plus complexe :

Si on a un nombre variable de catégories (2 ou plus) et des données qui ne suivent pas toujours la loi normale, ou dont la variance diffère d'une catégorie à l'autre, un des tests les plus robustes sera le test de Kruskal-Wallis.

3- Etablir un lien entre deux variables qualitatives

Exemple : y a-t-il un lien entre le sexe et le fait d'être malade ?

Etablir une relation entre deux variables qualitatives, c'est faire un khi² d'indépendance.

Cela nécessite de préparer un contingent sous forme de tableau à 2 entrées grâce à la fonction crosstab de pandas.