Module R’Stat1 : Rappels (1/4)

Novembre 2019 ; IRD-Montpellier-France

CC BY-NC-ND 3.0

Rappels : environnement de travail

R et EDI

Les principaux EDI et éditeurs de texte pour R :

Les principaux EDI et éditeurs de texte pour R.

Rappels : la notion d’objet

un objet ?

## [1] 5
## [1] 15

Dans ce cours nous utiliserons toujours la forme <- par souci de consistance et aussi parce que c’est la forme la plus répandue.

(parenthèse sur le style)

  • le style lowerCamelCase
  • les espaces
  • l’indentation

un objet ?

## [1] 25
## [1] 47.12389

un objet ?

FONCTION pour lister les objets : ls()

## [1] "monObjet"
## [1] "monObjet"
## character(0)

un objet ?

## [1] 5

un objet ?

## character(0)
## [1] "sppA" "sppB" "sppC"

Rappels : le répertoire de travail

Mais où suis-je ?

## [1] "D:/00__EN_COURS/FORMATION/CURSOS_DE_R_2019_IRD"

Définir son répertoire de travail

## [1] "D:/00__EN_COURS/FORMATION/CURSOS_DE_R_2019_IRD"

Lister les fichiers

##  [1] "_output.yaml"               "00_avantDeVenir.R"         
##  [3] "00_buildPrez.R"             "ADMIN"                     
##  [5] "ARCHIVES"                   "barplot.pdf"               
##  [7] "biblio_LM_GLM"              "CURSOS_DE_R_2019_IRD.Rproj"
##  [9] "DATA"                       "dependent_HTML_libraries"  
## [11] "inkscape.mp4"               "logoGimp.png"              
## [13] "logoInkscape.png"           "multplot.pdf"              
## [15] "multplot.png"               "R00_links.html"            
## [17] "R00_links.Rmd"              "R010_intro.html"           
## [19] "R010_intro.Rmd"             "R011_intro.html"           
## [21] "R011_intro.Rmd"             "R012_intro.html"           
## [23] "R012_intro.Rmd"             "R013_intro.html"           
## [25] "R013_intro.Rmd"             "R014_intro.html"           
## [27] "R014_intro.Rmd"             "R015_intro_TD01.html"      
## [29] "R015_intro_TD01.Rmd"        "R016_intro_TD02.html"      
## [31] "R016_intro_TD02.Rmd"        "R021_statsDescrp.html"     
## [33] "R021_statsDescrp.Rmd"       "R031_statsSimple.html"     
## [35] "R031_statsSimple.Rmd"       "R032_statsSimple_TD03.html"
## [37] "R032_statsSimple_TD03.Rmd"  "R033_statsSimple_TD04.html"
## [39] "R033_statsSimple_TD04.Rmd"  "R034_statsSimple_TD05.html"
## [41] "R034_statsSimple_TD05.Rmd"  "R041_modLin.html"          
## [43] "R041_modLin.Rmd"            "R051_regLin.html"          
## [45] "R051_regLin.Rmd"            "R052_regLin_TD06.html"     
## [47] "R052_regLin_TD06.Rmd"       "R053_regLinMult.html"      
## [49] "R053_regLinMult.Rmd"        "R054_regLin_TD07.html"     
## [51] "R054_regLin_TD07.Rmd"       "R055_modLin.html"          
## [53] "R055_modLin.Rmd"            "R061_ANCOVA.html"          
## [55] "R061_ANCOVA.Rmd"            "R071_ts.html"              
## [57] "R071_ts.Rmd"                "R081_glm.html"             
## [59] "R081_glm.Rmd"               "rEtEDI.png"                
## [61] "reveal.css"                 "rTD02_1.png"

Lister les fichiers

## [1] "00_avantDeVenir.R" "00_buildPrez.R"
##  [1] "R00_links.Rmd"             "R010_intro.Rmd"           
##  [3] "R011_intro.Rmd"            "R012_intro.Rmd"           
##  [5] "R013_intro.Rmd"            "R014_intro.Rmd"           
##  [7] "R015_intro_TD01.Rmd"       "R016_intro_TD02.Rmd"      
##  [9] "R021_statsDescrp.Rmd"      "R031_statsSimple.Rmd"     
## [11] "R032_statsSimple_TD03.Rmd" "R033_statsSimple_TD04.Rmd"
## [13] "R034_statsSimple_TD05.Rmd" "R041_modLin.Rmd"          
## [15] "R051_regLin.Rmd"           "R052_regLin_TD06.Rmd"     
## [17] "R053_regLinMult.Rmd"       "R054_regLin_TD07.Rmd"     
## [19] "R055_modLin.Rmd"           "R061_ANCOVA.Rmd"          
## [21] "R071_ts.Rmd"               "R081_glm.Rmd"

Lister les fichiers

## [1] "bdd.csv"         "bddSept2019.csv" "dump.csv"        "patronymes.csv" 
## [5] "Prenoms.csv"

Lire un fichier

## Warning in file(file, "rt"): impossible d'ouvrir le fichier 'Prenoms.csv' :
## No such file or directory
## Error in file(file, "rt"): impossible d'ouvrir la connexion

Lire un fichier

##   X01_prenom X02_genre      X03_langage X04_frequence
## 1    aaliyah         f english (modern)             0
## 2     aapeli         m          finnish             0
## 3       aapo         m          finnish             0
## 4      aaren       m,f          english             0
## 5      aarne         m          finnish             0
## 6      aarón         m          spanish             0

Lire un fichier

##   X01_prenom X02_genre      X03_langage X04_frequence
## 1    aaliyah         f english (modern)             0
## 2     aapeli         m          finnish             0
## 3       aapo         m          finnish             0
## 4      aaren       m,f          english             0
## 5      aarne         m          finnish             0
## 6      aarón         m          spanish             0

Lire un fichier

  • csv
  • header nom des colonnes
  • pas de chiffre en début de nom de colonne
  • spe séparateur de champs
  • dec séparateur de décimales
  • ?read.table() et csv, …

Rappels : les types de données

numeric

  • les nombres entiers (integers)
  • les nombres à virgule (double)

Par défaut R considère tous les nombres comme des nombres à virgule et leur attribue le type double.

numeric

## [1] "double"
## [1] "double"
## [1] TRUE
## [1] TRUE

numeric

## [1] "integer"
## [1] "double"
## [1] "integer"

numeric

## [1] 5
## [1] 5
## [1] TRUE

numeric

## [1] 5
## [1] 5.426
## [1] 6
## [1] 5

numeric

## [1] 49.73699
## [1] 49

character (texte)

## [1] "character"

character

character

factor

## [1] aaa
## Levels: aaa
## [1] "integer"
## [1] TRUE
## [1] "aaa"

factor

## [1] "aaa"
## [1] 1

logical

## [1] TRUE
## [1] "logical"
## [1] TRUE

logical

## [1] 2
## [1] 1
## [1] "TRUE"

logical

## [1] TRUE
## [1] TRUE
## [1] TRUE
## [1] TRUE

logical

## [1] 2
## [1] 1
## [1] TRUE

logical

## [1] TRUE
## [1] TRUE
## [1] TRUE
## [1] TRUE
## [1] TRUE

NA

Absence de données ou données manquantes

NA

## [1] NA
## [1] "logical"
## [1] "integer"
## [1] "character"

NA

## [1] NA
## [1] NA
## [1] NA
## [1] NA

Date et POSIX

Pour les “dates” et les “dates et heures”

…et les packages comme lubridate ?

Date et POSIX

Dans nos fichiers :

  • 27/12/2018
  • 12/27/2018
  • 12/27/18
  • december 27 2018
  • 27 dec 2018

Date et POSIX ?strptime

code Valeur
%a jour de la semaine (abréviation)
%A jour de la semaine
%b mois (abréviation)
%B mois
%d jour du mois (decimal)
%j jour de l’année (decimal)
%m mois (decimal)
%y année avec deux chiffres
%Y année
%U semaine de l’année en commençant par dimanche (decimal)
%W semaine de l’année en commençant par lundi (decimal)

Date et POSIX ?strptime

code Valeur
%H heure 24
%I heure 12
%M minute
%S seconde

Date et POSIX

## [1] "2018-12-27"
## [1] "2018-12-27"
## [1] "2018-12-27"

Date et POSIX

## [1] NA
## [1] "décembre"
## [1] "French_France.1252"

Date et POSIX

## [1] "C"
## [1] "2018-12-27"

Date et POSIX

## [1] "2018-12-27"

Date et POSIX

## [1] "French_France.1252"
## [1] "2018-12-27"
## [1] "2018-12-27"

Date et POSIX

## [1] "jeudi 27 décembre 2018"

Date et POSIX

les 30 prochains 1er mai vont tomber un :

##  [1] "dimanche 2020" "mardi 2021"    "mercredi 2022" "jeudi 2023"   
##  [5] "vendredi 2024" "dimanche 2025" "lundi 2026"    "mardi 2027"   
##  [9] "mercredi 2028" "vendredi 2029" "samedi 2030"   "dimanche 2031"
## [13] "lundi 2032"    "mercredi 2033" "jeudi 2034"    "vendredi 2035"
## [17] "samedi 2036"   "lundi 2037"    "mardi 2038"    "mercredi 2039"
## [21] "jeudi 2040"    "samedi 2041"   "dimanche 2042" "lundi 2043"   
## [25] "mardi 2044"    "jeudi 2045"    "vendredi 2046" "samedi 2047"  
## [29] "dimanche 2048" "mardi 2049"

Date et POSIX : nombre de jours fériés fixes

Date et POSIX

## [1] "2020 ouaip" "2021 ouaip" "2022 ohhh"  "2023 ohhh"  "2024 ouaip"
## [6] "2025 ouaip"

Date et POSIX

Date et POSIX

Date et POSIX

Class “POSIXct” represents the (signed) number of seconds since the beginning of 1970 (in the UTC time zone) as a numeric vector.

Date et POSIX

## [1] "2018-12-27 17:32:45 CET"

TD 01

SUIVANT