Introduction à R (suite)

Création d’un vecteur :
avec la fonction c()
exemples:

avec la fonction vector()
exemples:

Que se passe-t-il quand on mélange les objets
R ne va pas retourner une erreur mais va créer un nouveau vecteur de façon à avoir des objets de même classe. Ce vecteur prendra la classe la moins commune (on parle de coercion en anglais).
Par exemple, si on mélange un numeric avec un character :

y <- c(1.2, "a")

le vecteur y sera de classe "character", le dénominateur le moins commun.
logical + numeric => numeric
character + logical => character

A savoir, par convention, FALSE = 0 et TRUE = 1

Ces "coercitions" se font façon implicite, on peut également forcer la coercition d'un objet. Quand la conversion n'est pas possible

Les listes
les liste ont la caractéristique de pouvoir contenir des objets de classes différentes.

v <- list("a", 1.4, TRUE, 3 + 2i)

> v
[[1]]
[1] "a"

[[2]]
[1] 1.4

[[3]]
[1] TRUE

[[4]]
[1] 3+2i

Les éléments d'une liste vont avoir des doubles crochets.

Introduction à R

Les objets sont les éléments de base de R. Tout ce qui est lu ou encore créé dans R est un objet.

Les objets R se différencient par leur mode, qui décrit leur contenu, et leur classe, qui décrit leur structure. Certains objets peuvent encore être doté d’un ou plusieurs attributs.

Le mode est le type des éléments d’un objet; il en existe quatre principaux : numérique, caractère, complexe, et logique (FALSE ou TRUE).

Les objets atomiques (simples) sont de mode homogène c’est à dire qu’ils ne peuvent contenir que des données d’un seul type (mode)
Les objets récursifs sont de mode hétérogène, c’est à dire qu’ils peuvent contenir d’autres objets.

 

Les 5 types de data les plus utilisés

 Homogène (mode)Hétérogène (mode)
1dAtomic vector
(vecteur simple)
List
2dMatrixData Frame
3dArray
Le type de base dans R est le vecteur. Un vecteur est une liste d'éléments étant tous du même type.
Pour connaître la structure d’un objet, on peut utiliser la fonction class().

 

Modes disponibles et contenus correspondants

ModeContenu de l’objetObjets
numeric *nombres réelssimples (atomic)
complexnombres complexessimples (atomic)
logicalvaleurs booléennes (vrai/faux)simples (atomic)
characterchaînes de caractèressimples (atomic)
functionfonctionrécursifs
listdonnées quelconquesrécursifs
expressionexpressions non évaluéesrécursifs
Modes disponibles et contenus correspondants.

* On distingue deux types numériques, à savoir les integers (entiers) et les double ou real (réels).
Le mode et le type d’un objet sont souvent identiques. On accède au mode grâce à la fonction mode(). La fonction typeof() permet d’obtenir une description plus précise de la représentation interne d’un objet.

 

Attributs les plus usuels d’un objet

AttributUtilisation
classaffecte le comportement d’un objet
dimdimensions des matrices et tableaux
dimnamesétiquettes des dimensions des matrices et tableaux
namesétiquettes des éléments d’un objet
Attributs les plus usuels d’un objet