Health Expectancy - Analyze
1. Déterminez quelles sont les variables Discrètes et Continues du dataset
2. Analysez la variable 'Country'
2. Analysez la variable 'Spending_USD'
4. Faites de même pour la variable 'Life_Expectancy'
5. Observez l’évolution de la durée de vie à travers le temps
6. Analysez l’évolution des dépenses en santé de l’Allemagne et de la Grande-Bretagne à travers le temps
7. Analyzez l’histograme, la boxplot, et les statistiques de 'Life_Expectancy' propre à chaque pays
8. Analysez la relation entre la durée de vie et les dépenses dans la santé, aux États-Unis, de 2000 à 2020
9. Il y a une valeur aberrante tant tout cela. Laquelle? Pourquoi?
2. Analysez la variable 'Country'
2. Analysez la variable 'Spending_USD'
4. Faites de même pour la variable 'Life_Expectancy'
5. Observez l’évolution de la durée de vie à travers le temps
6. Analysez l’évolution des dépenses en santé de l’Allemagne et de la Grande-Bretagne à travers le temps
7. Analyzez l’histograme, la boxplot, et les statistiques de 'Life_Expectancy' propre à chaque pays
8. Analysez la relation entre la durée de vie et les dépenses dans la santé, aux États-Unis, de 2000 à 2020
9. Il y a une valeur aberrante tant tout cela. Laquelle? Pourquoi?
1. Déterminez quelles sont les variables Discrètes et Continues du dataset
df.info()
df.nunique()
Year 51 Country 6 Spending_USD 274 Life_Expectancy 118 dtype: int64
df.head()
Year Country Spending_USD Life_Expectancy 0 1970 Germany 252.311 70.6 1 1970 France 192.143 72.2 2 1970 Great Britain 123.993 71.9 3 1970 Japan 150.437 72.0 4 1970 USA 326.961 70.9
Variables discrètes : 'Year' et 'Country'
Variables continues : 'Spending_USD' et 'Life_Expectancy'
Variables continues : 'Spending_USD' et 'Life_Expectancy'
2. Analysez la variable 'Country'
La variable 'Country' est une variable discrète contenant 6 valeurs distinctes.
Tri par valeur décroissante
df['Country'].value_counts(normalize=False)
Country USA 51 Japan 51 Germany 50 Canada 44 Great Britain 43 France 35 Name: count, dtype: int64
Tri par pays
df['Country'].value_counts(normalize=False).sort_index()
Country Canada 44 France 35 Germany 50 Great Britain 43 Japan 51 USA 51 Name: count, dtype: int64
["df['Country'].value_counts(normalize=True, sort=True, ascending=False).round(2)"]
→
Les pays ne sont pas représentés de manière équivalente.
sns.countplot(data=df, x='Country', order=df['Country'].value_counts().index)
plt.title('Nombre d’apparitions de chaque pays
dans ce jeu de données de 1970 à 1020')
2. Analysez la variable 'Spending_USD'
La variable 'Spending_USD' est une variable continue.
Moyenne, variance,...
df['Spending_USD'].describe()
count 274.000000 mean 2789.338905 std 2194.939785 min 123.993000 25% 1038.357000 50% 2295.578000 75% 4055.610000 max 11859.179000 Name: Spending_USD, dtype: float64
→
La France, les USA, le Canada, le Japon, l’Allemagne et la Grande-Bretagne ont dépensé ensemble en moyenne 2789 USD par an de 1970 à 2020
avec un écrat-type de 2195 USD
La plus faible dépense est de 124 USD en Angleterre en 1970
La plus élevée est de 11859 USD aux USA en 2020
/!\ L’écart-type (std) est important et presque égal à la moyenne (mean).
/!\ La médiane (50%) est inférieure de presque 500 USD à la moyenne.
avec un écrat-type de 2195 USD
La plus faible dépense est de 124 USD en Angleterre en 1970
La plus élevée est de 11859 USD aux USA en 2020
/!\ L’écart-type (std) est important et presque égal à la moyenne (mean).
/!\ La médiane (50%) est inférieure de presque 500 USD à la moyenne.
sns.histplot(data=df, x='Spending_USD')
plt.title('Histogramme des dépenses')
sns.boxplot(data=df, x='Spending_USD')
plt.title('Boite à moustache des dépenses')
fig, ax = sns.subplots(2, 1, sharex=True)
plt.suptitle('Répartition des dépenses de santé en USD entre 1970 et 2020 pour les pays France, USA, Canada, Japon, Allemagne et Grande-Bretagne')
sns.histplot(data=df, x='Spending_USD', ax=ax[0])
sns.boxplot(data=df, x='Spending_USD', ax=ax[1])
4. Faites de même pour la variable 'Life_Expectancy'
La variable 'Life_Expectancy' est une variable continue.
Moyenne, variance,...
df['Life_Expectancy'].describe()
count 274.000000 mean 77.909489 std 3.276263 min 70.600000 25% 75.525000 50% 78.100000 75% 80.575000 max 84.700000 Name: Life_Expectancy, dtype: float64
→
La durée de vie moyenne en France, les USA, le Canada, le Japon, l’Allemagne et GB de 1970 à 2020 est de 77.9 ans pour tous ces pays
avec un écart-type de 3.27 ans
une médiane de 78.1 ans
avec un écart-type de 3.27 ans
une médiane de 78.1 ans
fig, ax = sns.subplots(2, 1, sharex=True)
plt.suptitle('Répartition de l’espérance de vie entre 1970 et 2020 pour les pays France, USA, Canada, Japon, Allemagne et Grande-Bretagne')
sns.histplot(data=df, x='Life_Expectancy', ax=ax[0])
sns.boxplot(data=df, x='Life_Expectancy', ax=ax[1])
5. Observez l’évolution de la durée de vie à travers le temps
Moyenne des espérances de vie par année
df.groupby('Year')['Life_Expectancy'].mean()
Year 1970 71.52 1971 71.92 1972 71.80 1973 72.03 1974 72.40 1975 72.85 1976 73.32 1977 73.70 1978 73.87 1979 74.50 1980 74.23 1981 74.62 1982 74.92 1983 75.12 1984 75.42 1985 75.62 1986 75.86 1987 76.18 1988 76.26 1989 76.48 1990 76.92 1991 77.06 1992 77.10 1993 77.08 1994 77.45 1995 77.45 1996 77.77 1997 78.07 1998 78.28 1999 78.38 2000 78.72 2001 78.95 2002 79.08 2003 79.13 2004 79.68 2005 79.77 2006 80.15 2007 80.37 2008 80.48 2009 80.77 2010 80.93 2011 81.10 2012 81.22 2013 81.32 2014 81.63 2015 81.43 2016 81.62 2017 81.63 2018 81.68 2019 81.83 2020 81.20 Name: Life_Expectancy, dtype: float64
df.groupby('Year')['Life_Expectancy'].mean().plot(kind='bar')
plt.title('Life Expectancy by Year')
sns.boxplot(data=df, x='Year', y='Life_Expectancy')
plt.title('Life Expectancy by Year (boxplot)')
sns.scatterplot(data=df, x='Year', y='Life_Expectancy')
plt.title('Life Expectancy by Year')
sns.scatterplot(data=df, x='Year', y='Life_Expectancy', hue='Country')
plt.title('Life Expectancy by Year')
6. Analysez l’évolution des dépenses en santé de l’Allemagne et de la Grande-Bretagne à travers le temps
Filtre sur Allemgne et Grande-Bretagne
df.query("`Country` == 'Germany' | `Country` == 'Great Britain'")
Year Country Spending_USD Life_Expectancy 0 1970 Germany 252.311 70.6 2 1970 Great Britain 123.993 71.9 6 1971 Germany 298.251 70.8 7 1971 Great Britain 134.172 71.9 10 1972 Germany 337.364 71.0 .. ... ... ... ... 259 2018 Great Britain 4189.708 81.3 263 2019 Germany 6407.928 81.3 265 2019 Great Britain 4385.463 81.4 269 2020 Germany 6938.983 81.1 271 2020 Great Britain 5018.700 80.4 [93 rows x 4 columns]
sns.scatterplot(data=df.query("`Country` == 'Germany' | `Country` == 'Great Britain'"), x='Year', y='Life_Expectancy', hue='Country')
plt.title('Espérance de vie par année en Allemagne et en Grande-Bretagne')
7. Analyzez l’histograme, la boxplot, et les statistiques de 'Life_Expectancy' propre à chaque pays
Statistiques par pays
df.groupby('Country')['Life_Expectancy'].describe()
count mean std min 25% 50% 75% max Country Canada 44.0 78.706818 2.502222 72.8 76.775 78.7 80.975 82.2 France 35.0 79.565714 2.862120 72.2 78.050 79.4 82.200 82.9 Germany 50.0 76.726000 3.473915 70.6 73.575 77.1 80.175 81.3 Great Britain 43.0 77.620930 2.827548 71.9 75.350 77.5 80.400 81.4 Japan 51.0 79.554902 3.547242 72.0 76.950 79.8 82.650 84.7 USA 51.0 75.843137 2.336258 70.9 74.550 75.7 77.950 78.9
sns.displot(data=df, x='Life_Expectancy', col='Country')
plt.title('Distribution de l’Espérance de vie par pays')
sns.boxplot(data=df, x='Life_Expectancy', y='Country')
plt.title('Distribution de l’Espérance de vie par pays')
8. Analysez la relation entre la durée de vie et les dépenses dans la santé, aux États-Unis, de 2000 à 2020
Filtre sur Etats-Unis, de 2000 à 2020
df.query("`Country` == 'USA' & `Year` >= 2000 & `Year` <= 2020 ")
Year Country Spending_USD Life_Expectancy 153 2000 USA 4536.561 76.7 159 2001 USA 4888.518 76.9 165 2002 USA 5316.522 77.0 171 2003 USA 5726.538 77.1 177 2004 USA 6069.530 77.6 183 2005 USA 6430.757 77.6 189 2006 USA 6808.054 77.8 195 2007 USA 7166.513 78.1 201 2008 USA 7385.026 78.1 207 2009 USA 7645.002 78.5 213 2010 USA 7879.253 78.6 219 2011 USA 8079.467 78.7 225 2012 USA 8346.064 78.8 231 2013 USA 8519.620 78.8 237 2014 USA 8925.879 78.9 243 2015 USA 9355.118 78.7 249 2016 USA 9717.649 78.7 255 2017 USA 10046.472 78.6 261 2018 USA 10451.386 78.7 267 2019 USA 10855.517 78.8 273 2020 USA 11859.179 77.0
sns.scatterplot(data=df.query("`Country` == 'USA' & `Year` >= 2000 & `Year` <= 2020"), x='Spending_USD', y='Life_Expectancy')
plt.title('Espérance de vie et dépenses aux Etats-Unis depuis les années 2000')
9. Il y a une valeur aberrante tant tout cela. Laquelle? Pourquoi?
sns.scatterplot(data=df.query("`Country` == 'USA' & `Year` >= 2000 & `Year` <= 2020"), x='Spending_USD', y='Life_Expectancy')
for index, row in df.query("`Country` == 'USA' & `Year` >= 2000 & `Year` <= 2020").iterrows():
plt.text(row['Spending_USD'], row['Life_Expectancy'] + 0.1, str(row['Year'], color='black', ha='center')
plt.title('Espérance de vie et dépenses aux Etats-Unis depuis les années 2000')
En 2020 les dépenses de santé sont les plus importantes au sein de l'échantillon (12 OOO USD), alors que l'espérance de vie est faible (77 ans)
Cela correspond a l'impact de la COVID-19.
Cela correspond a l'impact de la COVID-19.