Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parPascale Dubé Modifié depuis plus de 6 années
1
Chapitre 1 nombres, chaînes de caractères, booléens, et VARIABLES
Programmation en R
2
Lancement de R R est un langage de programmation orienté pour le traitement des statistiques. Les fichiers scripts R (programmes R) sont des fichiers d’extension « .R ». Les fichiers de données R (i.e., contenant des objets R, data frames, etc.) ont l’extension « .Rdata ». On peut lancer R en tapant R depuis une invite de commande. Il existe des applications plus « user friendly » comme R Studio. Pour exécuter un fichier script R, ouvrez une session R et tapez source("nom_fichier.R").
3
Les nombres # En R, on distingue trois types de nombres: # - les entiers: ils sont de type "integer" # - les réels: ils sont de type "double" # - les complexes: ils sont de type "complex"
4
Les nombres # Par défaut, le type est réel (double) 2 [1] 2 typeof(2) # de type double [1] "double" 3.74 [1] 3.74 typeof(3.74) # de type double
5
Les nombres # Pour spécifier un entier (integer), # on utilise la fonction as.integer() # ou la fonction as( , "integer") as.integer(2) [1] 2 typeof(as.integer(2)) # maintenant de type integer [1] "integer" as(3, "integer") [1] 3 typeof(as(2,"integer"))
6
Les nombres # Les nombres complexes s'écrivent x + iy # Ils sont de type "complex" 2+3i [1] 2+3i typeof(2+3i) # de type complex [1] "complex" sqrt(-1 + 0i) [1] 0+1i sqrt(-1) Warning message: In sqrt(-1): NaNs produced # NaN signifie "not a number"
7
Les nombres # Aritmétique de base # addition [1] * 3.45 # multiplication [1] / 2.82 # division [1] ^ 8 # exponentiation [1] %% 3 # modulo [1] 2
8
Les nombres # R possède une borne sur la taille et la précision des nombres qu'il peut représenter. # Lorsque le nombre est trop grand, il produit l'objet Inf qui signifie "infini" 2 ^ 1023 [1] e ^ 1024 [1] Inf
9
Les nombres # Instanciation de variables numériques. On utilise l'opérateur d'instanciation <- et la syntaxe: nom_variable <- valeur_variable # Cet opérateur représente une flêche de droite à gauche et signifie: on affecte la valeur valeur_variable à la variable nom_variable x <- 3 y <- 7 x * y [1] 21 z <- sqrt(x^2 + y^2) # sqrt signifie "racine carrée" print(z) # la fonction print imprime à l'écran [1]
10
Les chaînes de caractères
# Les chaînes de caractères désignent tout ce qui est textuel. # Elles se notent entre guillemets. # Elles sont de type "character". "bonjour" [1] "Bonjour" "ceci est du texte” [1] "ceci est du texte" typeof("bonjour") # de type character [1] "character"
11
Les chaînes de caractères
# instanciation de variable... v <- "bonjour" v [1] "bonjour" print(v)
12
Les booléens # Les booléens sont les valeurs logiques qui représentent le vrai et le faux. # En R, le vrai se dit TRUE ou T et le faux se dit FALSE ou F (en majuscules) # Les booléens sont de type "logical" TRUE [1] TRUE FALSE [1] FALSE x <- TRUE print(x) typeof(x) [1] "logical"
13
Les booléens # Les opérateurs logiques sont les suivants: # - la négation est donnée par: ! # - la conjonction, le "et" logique, est donnée par: & ou && # - la disjonction, le "ou" logique, est donnée par: | ou ||
14
Les booléens # La négation est un opéraeur unaire qui inverse la valeur de vérité: # si une variable est vraie, sa négation est fausse # si une variable est fausse, sa négation est vraie !TRUE [1] FALSE !FALSE [1] TRUE b1 <- TRUE !b1 b2 <- !!b1 b2
15
Les booléens # La conjonction, le "et" logique, est un opérateur binaire: la conjonction de deux variables est vraie ssi les deux variables sont vraies; elle est fausse dans tous les autres cas. # On a la table de vérité suivante: TRUE & TRUE [1] TRUE TRUE & FALSE [1] FALSE FALSE & TRUE FALSE & FALSE
16
Les booléens # La disjonction, le "ou" logique, est un opérateur binaire: la disjonction de deux variables est vraie ssi au moins une des deux variables est vraie; elle est fausse dans tous les autres cas. # On a la table de vérité suivante: TRUE | TRUE [1] TRUE TRUE | FALSE FALSE | TRUE FALSE | FALSE [1] FALSE
17
Les booléens # Priorité des opérateurs logiques # - le ! prime sur le & et le | # - le & prime sur le | # - en résumé: ! prime sur & prime sur !
18
Les booléens !TRUE & FALSE [1] FALSE !(TRUE & FALSE) [1] TRUE !TRUE | TRUE !(TRUE | TRUE) FALSE & FALSE | TRUE # compris comme (F & F) | T (FALSE & FALSE) | TRUE # même expression FALSE & (FALSE | TRUE) # autre parenthésage
19
Les booléens # Que valent les expressions suivantes? !((T & !F) | !(T | F)) [1] FALSE F | F | T & !T | !F [1] TRUE # mais il est préférable de toujours bien mettre des parenthèses
20
Les booléens # Opérateurs de comparaison. # Les résultats des opérateurs de comparaison sont des valeurs booléennes # Les opérateurs de comparaison sont les suivants: # < : plus petit que # > : plus grand que # <= : plus petit ou égal à # >= : plus grand ou égal à # == : égal à (attention double signe =) # != : différent de
21
Les booléens (2 <= 4) & ("bonjour" == "bonjour") [1] TRUE (2 >= 4) | !(sqrt(4) == 2) [1] FALSE (2 != (1+1)) & !(3 > 3) (2 == (1+1)) & !(3 < 3)
22
Variables # Comme on l'on a déjà vu, pour instancier une variable, on utilise l'opérateur d'instanciation <- et la syntaxe: nom_variable <- valeur_variable # Cet opérateur représente une flêche de droite à gauche et signifie: on affecte la valeur valeur_variable à la variable nom_variable # Les instructions d'affectation se lisent de droite à gauche!
23
Variables x <- 2 y <- sqrt(7) z < i c <- "CAR" b <- TRUE print(x) [1] 2 print(c) [1] "CAR" print(b) [1] TRUE
24
Variables # Attention aux opération sur des variables de types différents x + c Error in x + c : non-numeric argument to binary operator c + b Error in c + b : non-numeric argument to binary operator # TRUE peut être compris comme 1 et FALSE comme 0 y + b [1] y + !b [1]
25
Variables # Pour lister les variables définies, utiliser la fonction ls(). ls() [1] "b" "b1" "b2" "c" "v" "x" "y" "z" # Pour supprimer des variables, utiliser la fonction rm(). rm(b) [1] "b1" "b2" "c" "v" "x" "y" "z" rm(b1, b2) [1] "c" "v" "x" "y" "z" # Pour supprimer toutes les variables d'un coup, utiliser rm(list=ls()). rm(list=ls()) character(0) # il n'y a plus de variables définies
26
Remarque finale # Jusqu'à maintenant, presque chaque fois que l'on exécutait une ligne de code, on apercevait le signe [1] devant la réponse à cette exécution. 2 * 7 [1] 14 # Que signifie ce signe [1]? # En fait, nous avions l'impression de manipuler des nombres, des chaînes de caractères, des booléens, mais nous manipulions en réalité des VECTEURS de nombres, de chaînes de caractères, ou de booléens. # Le signe [1] signifie que dans ce cas, les vecteurs étaient de taille 1.
27
Remarque finale # Ainsi, en R, un nombre est un vecteur numérique de taille 1; # une chaîne de caractères est un vecteur textuel de taille 1; # un booléen est un vecteur booléen de taille 1.
28
Remarque finale # EN R, LES OBJETS DE BASE SONT EN FAIT DES VECTEURS. # IL NE FAUT JAMAIS OUBLIER QUE NOUS SOMMES GENERALEMENT EN TRAIN DE MANIPULER DES VECTEURS (OU DES OBJETS SIMILAIRES)! # Il existe bien évidemment d'autres sortes d'objets que nous allons étudier au chapitre suivant: vecteurs, matrices, tableaux, listes, data frames, etc.
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.