Formation R (2024-2025) séance 1

Notes générales du cours

  • Quarto : permet de combiner du code récupéré ailleurs (prêt à l’usage)
  • Markdown
  • YAML (le titre, format et editor)
  • Chunk : un morceau de codes avec un début et une fin (insérer un nouveau chunk avec le bouton vert C en haut à droite)
  • On laisse les ’’’ avant et après pour encadrer le chunk
  • Pour calculer : mean (moyenne) ; median (médiane) sd (écart-type)
  • Demander à ChatGPT pour connaître le code pour faire les calculs
  • Pour transformer le document en PDF, aller dans le YAML et changer le format html en PDF.
  • LATEX : On peut faire du LATEX dans Quarto
  • Un “pipe” (tuyau en anglais), c’est une instruction qui envoie quelque chose vers une fonction : %>%

#Questions à poser

  • La console se raffiche dès que j’appuie sur “Render”.
  • Les chunks et les passages LATEX ne sont pas grisés.
  • L’équation “force” n’est pas numérotée (voir plus bas).

Introduction à R

Quarto

Quarto enables you to weave together content and executable code into a finished document. To learn more about Quarto see https://quarto.org.

Running Code

When you click the Render button a document will be generated that includes both content and the output of embedded code. You can embed code like this:

1 + 1
[1] 2

You can add options to executable code like this

[1] 4

The echo: false option disables the printing of code (only output is displayed).

Autre

1 + 1 
[1] 2
c(1,2,3,4,5,6,7,8,9,10)
 [1]  1  2  3  4  5  6  7  8  9 10
1:10
 [1]  1  2  3  4  5  6  7  8  9 10
2004:2025+4
 [1] 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022
[16] 2023 2024 2025 2026 2027 2028 2029
sum(1:10)
[1] 55
sum((1:10)^2)
[1] 385

Travailler avec des data (méthode ancienne)

Nous utiliserons des données disponibles dans R

mtcars
                     mpg cyl  disp  hp drat    wt  qsec vs am gear carb
Mazda RX4           21.0   6 160.0 110 3.90 2.620 16.46  0  1    4    4
Mazda RX4 Wag       21.0   6 160.0 110 3.90 2.875 17.02  0  1    4    4
Datsun 710          22.8   4 108.0  93 3.85 2.320 18.61  1  1    4    1
Hornet 4 Drive      21.4   6 258.0 110 3.08 3.215 19.44  1  0    3    1
Hornet Sportabout   18.7   8 360.0 175 3.15 3.440 17.02  0  0    3    2
Valiant             18.1   6 225.0 105 2.76 3.460 20.22  1  0    3    1
Duster 360          14.3   8 360.0 245 3.21 3.570 15.84  0  0    3    4
Merc 240D           24.4   4 146.7  62 3.69 3.190 20.00  1  0    4    2
Merc 230            22.8   4 140.8  95 3.92 3.150 22.90  1  0    4    2
Merc 280            19.2   6 167.6 123 3.92 3.440 18.30  1  0    4    4
Merc 280C           17.8   6 167.6 123 3.92 3.440 18.90  1  0    4    4
Merc 450SE          16.4   8 275.8 180 3.07 4.070 17.40  0  0    3    3
Merc 450SL          17.3   8 275.8 180 3.07 3.730 17.60  0  0    3    3
Merc 450SLC         15.2   8 275.8 180 3.07 3.780 18.00  0  0    3    3
Cadillac Fleetwood  10.4   8 472.0 205 2.93 5.250 17.98  0  0    3    4
Lincoln Continental 10.4   8 460.0 215 3.00 5.424 17.82  0  0    3    4
Chrysler Imperial   14.7   8 440.0 230 3.23 5.345 17.42  0  0    3    4
Fiat 128            32.4   4  78.7  66 4.08 2.200 19.47  1  1    4    1
Honda Civic         30.4   4  75.7  52 4.93 1.615 18.52  1  1    4    2
Toyota Corolla      33.9   4  71.1  65 4.22 1.835 19.90  1  1    4    1
Toyota Corona       21.5   4 120.1  97 3.70 2.465 20.01  1  0    3    1
Dodge Challenger    15.5   8 318.0 150 2.76 3.520 16.87  0  0    3    2
AMC Javelin         15.2   8 304.0 150 3.15 3.435 17.30  0  0    3    2
Camaro Z28          13.3   8 350.0 245 3.73 3.840 15.41  0  0    3    4
Pontiac Firebird    19.2   8 400.0 175 3.08 3.845 17.05  0  0    3    2
Fiat X1-9           27.3   4  79.0  66 4.08 1.935 18.90  1  1    4    1
Porsche 914-2       26.0   4 120.3  91 4.43 2.140 16.70  0  1    5    2
Lotus Europa        30.4   4  95.1 113 3.77 1.513 16.90  1  1    5    2
Ford Pantera L      15.8   8 351.0 264 4.22 3.170 14.50  0  1    5    4
Ferrari Dino        19.7   6 145.0 175 3.62 2.770 15.50  0  1    5    6
Maserati Bora       15.0   8 301.0 335 3.54 3.570 14.60  0  1    5    8
Volvo 142E          21.4   4 121.0 109 4.11 2.780 18.60  1  1    4    2
?mtcars
mtcars$mpg
 [1] 21.0 21.0 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 17.8 16.4 17.3 15.2 10.4
[16] 10.4 14.7 32.4 30.4 33.9 21.5 15.5 15.2 13.3 19.2 27.3 26.0 30.4 15.8 19.7
[31] 15.0 21.4
mean(mtcars$mpg) # Moyenne
[1] 20.09062
median(mtcars$mpg) # Médiane
[1] 19.2
sd(mtcars$mpg) # Écart-type
[1] 6.026948

Faire un histogramme de qualité médiocre

hist(mtcars$mpg)

Écrire des équations mathématiques en LATEX dans Quarto

En ligne, on écrit \(E=mc^2\)

En display, on fait \[ E=mc^2 \]

En équation numérotée avec un label pour s’y référer (ne fonctionne qu’en format PDF).

\[\begin{equation} E = mc^2 \label{eq:energie} \end{equation}\]

Voir l’équation \(\eqref{eq:energie}\).

\[\begin{equation} F = m\gamma \label{eq:force} \end{equation}\]

Si on met une étoile à la fin de “equation” dans “begin” et “end”, l’équation n’est pas numérotée. Par exemple :

\[\begin{equation*} x = (y-e)^z \label{eq:force} \end{equation*}\]

Voir l’équation \(\eqref{eq:energie}\). Ça marche. Voir l’équation \(\eqref{eq:force}\). Ça ne marche pas.

On peut travailler sur LATEX via Overleaf (en ligne).

Travailler avec des data (méthode moderne)

On utilise le Tidyverse (plusieurs packages). Ça fait les graphiques. C’est la manipulation des graphiques et des tableaux. Les packages aident à manipuler les données.

Installer les packages

On doit installer les packages. Pour cela, aller dans “Packages” (à côté du Pane Viewer à droite). Puis, cliquez sur “Install” et taper “tidyverse”. Il y a de nombreux packages.

library(tidyverse)
── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
✔ dplyr     1.1.4     ✔ readr     2.1.5
✔ forcats   1.0.0     ✔ stringr   1.5.1
✔ ggplot2   3.5.1     ✔ tibble    3.2.1
✔ lubridate 1.9.4     ✔ tidyr     1.3.1
✔ purrr     1.0.4     
── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
✖ dplyr::filter() masks stats::filter()
✖ dplyr::lag()    masks stats::lag()
ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors

On va mobiliser un “pipe” (voir notes générales) : %>%

mtcars
                     mpg cyl  disp  hp drat    wt  qsec vs am gear carb
Mazda RX4           21.0   6 160.0 110 3.90 2.620 16.46  0  1    4    4
Mazda RX4 Wag       21.0   6 160.0 110 3.90 2.875 17.02  0  1    4    4
Datsun 710          22.8   4 108.0  93 3.85 2.320 18.61  1  1    4    1
Hornet 4 Drive      21.4   6 258.0 110 3.08 3.215 19.44  1  0    3    1
Hornet Sportabout   18.7   8 360.0 175 3.15 3.440 17.02  0  0    3    2
Valiant             18.1   6 225.0 105 2.76 3.460 20.22  1  0    3    1
Duster 360          14.3   8 360.0 245 3.21 3.570 15.84  0  0    3    4
Merc 240D           24.4   4 146.7  62 3.69 3.190 20.00  1  0    4    2
Merc 230            22.8   4 140.8  95 3.92 3.150 22.90  1  0    4    2
Merc 280            19.2   6 167.6 123 3.92 3.440 18.30  1  0    4    4
Merc 280C           17.8   6 167.6 123 3.92 3.440 18.90  1  0    4    4
Merc 450SE          16.4   8 275.8 180 3.07 4.070 17.40  0  0    3    3
Merc 450SL          17.3   8 275.8 180 3.07 3.730 17.60  0  0    3    3
Merc 450SLC         15.2   8 275.8 180 3.07 3.780 18.00  0  0    3    3
Cadillac Fleetwood  10.4   8 472.0 205 2.93 5.250 17.98  0  0    3    4
Lincoln Continental 10.4   8 460.0 215 3.00 5.424 17.82  0  0    3    4
Chrysler Imperial   14.7   8 440.0 230 3.23 5.345 17.42  0  0    3    4
Fiat 128            32.4   4  78.7  66 4.08 2.200 19.47  1  1    4    1
Honda Civic         30.4   4  75.7  52 4.93 1.615 18.52  1  1    4    2
Toyota Corolla      33.9   4  71.1  65 4.22 1.835 19.90  1  1    4    1
Toyota Corona       21.5   4 120.1  97 3.70 2.465 20.01  1  0    3    1
Dodge Challenger    15.5   8 318.0 150 2.76 3.520 16.87  0  0    3    2
AMC Javelin         15.2   8 304.0 150 3.15 3.435 17.30  0  0    3    2
Camaro Z28          13.3   8 350.0 245 3.73 3.840 15.41  0  0    3    4
Pontiac Firebird    19.2   8 400.0 175 3.08 3.845 17.05  0  0    3    2
Fiat X1-9           27.3   4  79.0  66 4.08 1.935 18.90  1  1    4    1
Porsche 914-2       26.0   4 120.3  91 4.43 2.140 16.70  0  1    5    2
Lotus Europa        30.4   4  95.1 113 3.77 1.513 16.90  1  1    5    2
Ford Pantera L      15.8   8 351.0 264 4.22 3.170 14.50  0  1    5    4
Ferrari Dino        19.7   6 145.0 175 3.62 2.770 15.50  0  1    5    6
Maserati Bora       15.0   8 301.0 335 3.54 3.570 14.60  0  1    5    8
Volvo 142E          21.4   4 121.0 109 4.11 2.780 18.60  1  1    4    2
mtcars %>% select(mpg)
                     mpg
Mazda RX4           21.0
Mazda RX4 Wag       21.0
Datsun 710          22.8
Hornet 4 Drive      21.4
Hornet Sportabout   18.7
Valiant             18.1
Duster 360          14.3
Merc 240D           24.4
Merc 230            22.8
Merc 280            19.2
Merc 280C           17.8
Merc 450SE          16.4
Merc 450SL          17.3
Merc 450SLC         15.2
Cadillac Fleetwood  10.4
Lincoln Continental 10.4
Chrysler Imperial   14.7
Fiat 128            32.4
Honda Civic         30.4
Toyota Corolla      33.9
Toyota Corona       21.5
Dodge Challenger    15.5
AMC Javelin         15.2
Camaro Z28          13.3
Pontiac Firebird    19.2
Fiat X1-9           27.3
Porsche 914-2       26.0
Lotus Europa        30.4
Ford Pantera L      15.8
Ferrari Dino        19.7
Maserati Bora       15.0
Volvo 142E          21.4
mtcars %>% select(1:4)
                     mpg cyl  disp  hp
Mazda RX4           21.0   6 160.0 110
Mazda RX4 Wag       21.0   6 160.0 110
Datsun 710          22.8   4 108.0  93
Hornet 4 Drive      21.4   6 258.0 110
Hornet Sportabout   18.7   8 360.0 175
Valiant             18.1   6 225.0 105
Duster 360          14.3   8 360.0 245
Merc 240D           24.4   4 146.7  62
Merc 230            22.8   4 140.8  95
Merc 280            19.2   6 167.6 123
Merc 280C           17.8   6 167.6 123
Merc 450SE          16.4   8 275.8 180
Merc 450SL          17.3   8 275.8 180
Merc 450SLC         15.2   8 275.8 180
Cadillac Fleetwood  10.4   8 472.0 205
Lincoln Continental 10.4   8 460.0 215
Chrysler Imperial   14.7   8 440.0 230
Fiat 128            32.4   4  78.7  66
Honda Civic         30.4   4  75.7  52
Toyota Corolla      33.9   4  71.1  65
Toyota Corona       21.5   4 120.1  97
Dodge Challenger    15.5   8 318.0 150
AMC Javelin         15.2   8 304.0 150
Camaro Z28          13.3   8 350.0 245
Pontiac Firebird    19.2   8 400.0 175
Fiat X1-9           27.3   4  79.0  66
Porsche 914-2       26.0   4 120.3  91
Lotus Europa        30.4   4  95.1 113
Ford Pantera L      15.8   8 351.0 264
Ferrari Dino        19.7   6 145.0 175
Maserati Bora       15.0   8 301.0 335
Volvo 142E          21.4   4 121.0 109
mtcars %>% select(mpg,2)
                     mpg cyl
Mazda RX4           21.0   6
Mazda RX4 Wag       21.0   6
Datsun 710          22.8   4
Hornet 4 Drive      21.4   6
Hornet Sportabout   18.7   8
Valiant             18.1   6
Duster 360          14.3   8
Merc 240D           24.4   4
Merc 230            22.8   4
Merc 280            19.2   6
Merc 280C           17.8   6
Merc 450SE          16.4   8
Merc 450SL          17.3   8
Merc 450SLC         15.2   8
Cadillac Fleetwood  10.4   8
Lincoln Continental 10.4   8
Chrysler Imperial   14.7   8
Fiat 128            32.4   4
Honda Civic         30.4   4
Toyota Corolla      33.9   4
Toyota Corona       21.5   4
Dodge Challenger    15.5   8
AMC Javelin         15.2   8
Camaro Z28          13.3   8
Pontiac Firebird    19.2   8
Fiat X1-9           27.3   4
Porsche 914-2       26.0   4
Lotus Europa        30.4   4
Ford Pantera L      15.8   8
Ferrari Dino        19.7   6
Maserati Bora       15.0   8
Volvo 142E          21.4   4

La formule de conversion de miles per gallon (mpg) vers L au 100 km :

\[L/100\text{km} = \frac{235.215}{mpg}\]

Appliquons la formule pour créer une nouvelle variable qui donne la consommation en litres pour 100 km.

mpg %>% mutate(1)
# A tibble: 234 × 12
   manufacturer model      displ  year   cyl trans drv     cty   hwy fl    class
   <chr>        <chr>      <dbl> <int> <int> <chr> <chr> <int> <int> <chr> <chr>
 1 audi         a4           1.8  1999     4 auto… f        18    29 p     comp…
 2 audi         a4           1.8  1999     4 manu… f        21    29 p     comp…
 3 audi         a4           2    2008     4 manu… f        20    31 p     comp…
 4 audi         a4           2    2008     4 auto… f        21    30 p     comp…
 5 audi         a4           2.8  1999     6 auto… f        16    26 p     comp…
 6 audi         a4           2.8  1999     6 manu… f        18    26 p     comp…
 7 audi         a4           3.1  2008     6 auto… f        18    27 p     comp…
 8 audi         a4 quattro   1.8  1999     4 manu… 4        18    26 p     comp…
 9 audi         a4 quattro   1.8  1999     4 auto… 4        16    25 p     comp…
10 audi         a4 quattro   2    2008     4 manu… 4        20    28 p     comp…
# ℹ 224 more rows
# ℹ 1 more variable: `1` <dbl>
mtcars%>%mutate("l_100km" = 235.215/mpg)%>%relocate("l_100km", .after = mpg)
                     mpg   l_100km cyl  disp  hp drat    wt  qsec vs am gear
Mazda RX4           21.0 11.200714   6 160.0 110 3.90 2.620 16.46  0  1    4
Mazda RX4 Wag       21.0 11.200714   6 160.0 110 3.90 2.875 17.02  0  1    4
Datsun 710          22.8 10.316447   4 108.0  93 3.85 2.320 18.61  1  1    4
Hornet 4 Drive      21.4 10.991355   6 258.0 110 3.08 3.215 19.44  1  0    3
Hornet Sportabout   18.7 12.578342   8 360.0 175 3.15 3.440 17.02  0  0    3
Valiant             18.1 12.995304   6 225.0 105 2.76 3.460 20.22  1  0    3
Duster 360          14.3 16.448601   8 360.0 245 3.21 3.570 15.84  0  0    3
Merc 240D           24.4  9.639959   4 146.7  62 3.69 3.190 20.00  1  0    4
Merc 230            22.8 10.316447   4 140.8  95 3.92 3.150 22.90  1  0    4
Merc 280            19.2 12.250781   6 167.6 123 3.92 3.440 18.30  1  0    4
Merc 280C           17.8 13.214326   6 167.6 123 3.92 3.440 18.90  1  0    4
Merc 450SE          16.4 14.342378   8 275.8 180 3.07 4.070 17.40  0  0    3
Merc 450SL          17.3 13.596243   8 275.8 180 3.07 3.730 17.60  0  0    3
Merc 450SLC         15.2 15.474671   8 275.8 180 3.07 3.780 18.00  0  0    3
Cadillac Fleetwood  10.4 22.616827   8 472.0 205 2.93 5.250 17.98  0  0    3
Lincoln Continental 10.4 22.616827   8 460.0 215 3.00 5.424 17.82  0  0    3
Chrysler Imperial   14.7 16.001020   8 440.0 230 3.23 5.345 17.42  0  0    3
Fiat 128            32.4  7.259722   4  78.7  66 4.08 2.200 19.47  1  1    4
Honda Civic         30.4  7.737336   4  75.7  52 4.93 1.615 18.52  1  1    4
Toyota Corolla      33.9  6.938496   4  71.1  65 4.22 1.835 19.90  1  1    4
Toyota Corona       21.5 10.940233   4 120.1  97 3.70 2.465 20.01  1  0    3
Dodge Challenger    15.5 15.175161   8 318.0 150 2.76 3.520 16.87  0  0    3
AMC Javelin         15.2 15.474671   8 304.0 150 3.15 3.435 17.30  0  0    3
Camaro Z28          13.3 17.685338   8 350.0 245 3.73 3.840 15.41  0  0    3
Pontiac Firebird    19.2 12.250781   8 400.0 175 3.08 3.845 17.05  0  0    3
Fiat X1-9           27.3  8.615934   4  79.0  66 4.08 1.935 18.90  1  1    4
Porsche 914-2       26.0  9.046731   4 120.3  91 4.43 2.140 16.70  0  1    5
Lotus Europa        30.4  7.737336   4  95.1 113 3.77 1.513 16.90  1  1    5
Ford Pantera L      15.8 14.887025   8 351.0 264 4.22 3.170 14.50  0  1    5
Ferrari Dino        19.7 11.939848   6 145.0 175 3.62 2.770 15.50  0  1    5
Maserati Bora       15.0 15.681000   8 301.0 335 3.54 3.570 14.60  0  1    5
Volvo 142E          21.4 10.991355   4 121.0 109 4.11 2.780 18.60  1  1    4
                    carb
Mazda RX4              4
Mazda RX4 Wag          4
Datsun 710             1
Hornet 4 Drive         1
Hornet Sportabout      2
Valiant                1
Duster 360             4
Merc 240D              2
Merc 230               2
Merc 280               4
Merc 280C              4
Merc 450SE             3
Merc 450SL             3
Merc 450SLC            3
Cadillac Fleetwood     4
Lincoln Continental    4
Chrysler Imperial      4
Fiat 128               1
Honda Civic            2
Toyota Corolla         1
Toyota Corona          1
Dodge Challenger       2
AMC Javelin            2
Camaro Z28             4
Pontiac Firebird       2
Fiat X1-9              1
Porsche 914-2          2
Lotus Europa           2
Ford Pantera L         4
Ferrari Dino           6
Maserati Bora          8
Volvo 142E             2