Commit 2d077826 authored by Sophie Drogue's avatar Sophie Drogue

Mon exercice corrigé par les pairs Sujet 2

parent 5e2687b1
"","Year","Wheat","Wages"
"1",1565,41,5
"2",1570,45,5.05
"3",1575,42,5.08
"4",1580,49,5.12
"5",1585,41.5,5.15
"6",1590,47,5.25
"7",1595,64,5.54
"8",1600,27,5.61
"9",1605,33,5.69
"10",1610,32,5.78
"11",1615,33,5.94
"12",1620,35,6.01
"13",1625,33,6.12
"14",1630,45,6.22
"15",1635,33,6.3
"16",1640,39,6.37
"17",1645,53,6.45
"18",1650,42,6.5
"19",1655,40.5,6.6
"20",1660,46.5,6.75
"21",1665,32,6.8
"22",1670,37,6.9
"23",1675,43,7
"24",1680,35,7.3
"25",1685,27,7.6
"26",1690,40,8
"27",1695,50,8.5
"28",1700,30,9
"29",1705,32,10
"30",1710,44,11
"31",1715,33,11.75
"32",1720,29,12.5
"33",1725,39,13
"34",1730,26,13.3
"35",1735,32,13.6
"36",1740,27,14
"37",1745,27.5,14.5
"38",1750,31,15
"39",1755,35.5,15.7
"40",1760,31,16.5
"41",1765,43,17.6
"42",1770,47,18.5
"43",1775,44,19.5
"44",1780,46,21
"45",1785,42,23
"46",1790,47.5,25.5
"47",1795,76,27.5
"48",1800,79,28.5
"49",1805,81,29.5
"50",1810,99,30
"51",1815,78,NA
"52",1820,54,NA
"53",1821,54,NA
---
title: 'Sujet 2 : le pouvoir d''achat des ouvriers anglais du XVIe au XIXe siècle'
author: "Sophie Drogué"
date: "27/11/2021"
output:
pdf_document:
toc: yes
html_document:
toc: yes
theme: journal
word_document:
toc: yes
documentclass: article
classoption: a4paper
header-includes:
- \usepackage[french]{babel}
- \usepackage[upright]{fourier}
- \hypersetup{colorlinks=true,pagebackref=true}
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```
# 1. Préparation des données
Les données de Playfair "Data on Wages and the Price of Wheat" sont disponibles à l'adresse suivante: https://raw.githubusercontent.com/vincentarelbundock/Rdatasets/master/csv/HistData/Wheat.csv. Nous les récupérons sous forme d'un fichier en format CSV L'URL est:
```{r}
data_url = "https://raw.githubusercontent.com/vincentarelbundock
/Rdatasets/master/csv/HistData/Wheat.csv"
```
Je télécharge les données à parir de l'URL du site et je les enregistre en local si je ne l'ai pas déjà fait
```{r}
data_file = "Playfair-data.csv"
if (!file.exists(data_file)) {
download.file(data_url, data_file, method="auto")
}
```
Voici l'explication des colonnes donnée sur le [sur le site d'origine](https://vincentarelbundock.github.io/Rdatasets/doc/HistData/Wheat.html):
| Nom de colonne | Libellé de colonne |
|----------------+-----------------------------------------------------------------------------------------------------------------------------------|
| ` ` | numéro d'ordre des données (integer) |
| `Year` | année (intervalle 5 ans) (integer) |
| `Wheat` | prix du blé en (Shillings/Quarter bushel) (integer) |
| `Wages` | salaire hebdomadaire (Shillings): a numeric vector |
## Lecture
je lis le fichier CSV directement sur les données enregistrées localement.
```{r}
data = read.csv(data_file)
```
Regardons ce que nous avons obtenu:
```{r}
head(data)
tail(data)
```
Y a-t-il des points manquants dans nos données ?
```{r}
na_records = apply(data, 1, function (x) any(is.na(x)))
data[na_records,]
```
On Supprime les 3 dernières lignes sans supprimer le data file
```{r}
data <- data[-(50:53),]
na_records = apply(data, 1, function (x) any(is.na(x)))
data[na_records,]
```
Les trois colonnes qui nous intéressent sont `year`, `Wheat` et `Wages`. Vérifions leurs classes:
```{r}
class(data$Year)
class(data$Wages)
class(data$Wheat)
```
Ce sont des valeurs numériques, tout va bien !
# 2. Reproduire le graphe de Playfair à partir des données numériques.
Représentez, comme Playfair, le prix du blé par des barres et les salaires par une surface bleue délimitée par une courbe rouge. Superposez les deux de la même façon dans un seul graphique. Le style de votre graphique pourra rester différent par rapport à l'original, mais l'impression globale devrait être la même.
## Tracer le graphique 1
```{r}
#Tracer le graphique (partie gauche)
##### Ajuster les marges
par(mar=c(6,4,3,5))
#Axe des Y
barplot(data$Wheat,
axes=F,
ylim=c(0,100),
xlab="", ylab="",
xaxs="i",
col="white",
main="Graphique 1: Données de Playfair")
# Légende de l'axe Y de gauche
axis(2, ylim=c(0,100),col="black")
mtext("Prix du 1/4 de boisseau de blé en shilling",side=2,
line=2.5)
box() # pour encadrer le graphique
# Ajout de la courbe rouge correspondant à l'axe de droite
par(new=T) # Autorise la superposition des courbes
#et non le remplacement d'un graphique par un autre
plot(data$Year, data$Wages, pch=10, xlab="", ylab="",
ylim=c(0,100), axes=F,
type="o", col="red",xaxs="i", yaxs="i",)
# AXE des X
xtick<-seq(1565, 1805, by=5)
axis(1,xlim=(1565:1805), at=xtick,las =2 )
# Légende de l'axe des x
mtext("Années",side=1,col="black",line=2.5)
# Nom de la courbe en rouge
legend(x="topleft",
legend=c("Salaire hebdomadaire en shilling"),
text.col=c("red"),pch=c(10),col=c("red"))
#Surface sous la courbe en rouge
polygon(c(data$Year,max(data$Year),min(data$Year)),
c(data$Wages,0,0),
col="lightblue",density=NA)
```
# 3. Améliorez la présentation de ces données.
Pour commencer, Playfair a combiné les deux quantités dans un même graphique en simplifiant les unités "shillings par quart de boisseau de blé" et "shillings par semaine" à un simple "shillings", ce qui aujourd'hui n'est plus admissible. Utilisez deux ordonnées différentes, une à gauche et une à droite, et indiquez les unités correctes. À cette occasion, n'hésitez pas à proposer d'autres représentations que des barres et des surface/courbes pour les deux jeux de données si ceci vous paraît judicieux.
## Traçage du graphique 2
```{r}
#Tracer le graphique (partie gauche)
##### Ajuster les marges
par(mar=c(6,4,3,5))
barplot(data$Wheat, axes=F, ylim=c(0,100), xlab="", ylab="",
xaxs="i", col="white",
main="Graphique 2: Données de Playfair")
# Légende de l'axe Y de gauche
axis(2, ylim=c(0,100),col="black")
mtext("Prix du boisseau de blé en shilling",side=2,line=2.5)
box() # pour encadrer le graphique
# Ajout de la courbe rouge correspondant à l'axe de droite
par(new=T) # Autorise la superposition des courbes
#et non le remplacement d'un graphique par un autre
plot(data$Year, data$Wages, pch=10, xlab="", ylab="",
ylim=c(0,40), axes=F, type="o", col="red",xaxs="i",
yaxs="i",)
# Légende de l'axe Y de droite
mtext("Salaire hebdomadaire en shilling",side=4,col="red",
line=2.5)
axis(4, ylim=c(0,40), col="red",col.axis="red")
# AXE X
xtick<-seq(1565, 1805, by=5)
axis(1,xlim=(1565:1805), at=xtick,las =2 )
mtext("Années",side=1,col="black",line=2.5)
```
# 4. Représenter le pouvoir d'achat
L'objectif de Playfair était de montrer que le pouvoir d'achat des ouvriers avait augmenté au cours du temps. Essayez de mieux faire ressortir cette information. Pour cela, faites une représentation graphique du pouvoir d'achat au cours du temps, définie comme la quantité de blé qu'un ouvrier peut acheter avec son salaire hebdomadaire. Dans un autre graphique, montrez les deux quantités (prix du blé, salaire) sur deux axes différents, sans l'axe du temps. Trouvez une autre façon d'indiquer la progression du temps dans ce graphique. Quelle représentation des données vous paraît la plus claire ? N'hésitez pas à en proposer d'autres.
## Recalcul des données
D'abord on calcule le nombre de 1/4 de boisseau de blé que l'on pouvait s'acheter avec son salaire hebdomadaire en rajoutant la colonne "Pouvoir d'achat" dans notre dataframe
```{r}
data$Pouvoir = data$Wages/data$Wheat
data <- data[-(50:53),]
na_records = apply(data, 1, function (x) any(is.na(x)))
data[na_records,]
```
## Traçage du graphique 3 de pouvoir d'achat
```{r}
plot(data$Year, data$Pouvoir, pch=10, xlab="", ylab="",
ylim=c(0,1),
axes=F, type="o", col="red",xaxs="i", yaxs="i",
main=" Graphique 3: Données de Playfair")
# Légende de l'axe Y de gauche
axis(2, ylim=c(0,1),col="black")
mtext("Pouvoir d'achat en 1/4 de boisseau de blé",side=2,line=2.5)
box() # pour encadrer le graphique
# Axe des X
xtick<-seq(1565, 1805, by=5)
axis(1,xlim=(1565:1805), at=xtick,las =2 )
mtext("Années",side=1,col="black",line=2.5)
```
# Autre façon de représenter sans l'axe du temps
## Traçage du graphique 4
Ici j'ai représenté un scatter plot avec une ligne de tendance sencée représenter l'évolution du temps
```{r}
plot(data$Wages, data$Wheat, pch=10, xlab="", ylab="", ylim=c(25,60),
xlim=c(4,20),type="p", col="red",xaxs="i", yaxs="i",
main=" Graphique 4: Données de Playfair")
abline(lm(data$Wheat ~data$Wages)$coefficients, col="blue",lwd=2)
# Légende de l'axe Y de gauche
axis(2, ylim=c(25,60),col="black")
mtext("Prix du 1/4 de boisseau de blé en shilling",side=2,line=2.5)
axis(1,xlim=c(4,20), col="black" )
mtext("Salaire hebdomadaire en shilling",side=1,col="black",line=2.5)
```
Je remercie pour leur aide en ligne:
le forum du Cirad : http://forums.cirad.fr/
et Antoine Massé : https://sites.google.com/site/rgraphiques/home
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment