R (langage de programmation): Pourquoi R sappelle R?


Meilleure réponse

Je crois que cette histoire nest pas anecdotique. Comme tout le monde la dit, R est basé sur S et je suppose que S signifie langage statistique et S était un langage open source. Voyant l’importance croissante de S, IBM voulait l’acquérir, mais la partie de l’équipe de base de S voulait la conserver en open source et la partie restante a été acceptée pour la proposition d’IBM. Plus tard, IBM a acquis une partie est devenue S-plus et la communauté open source a prospéré et a fait de nombreux ajouts à S et qui a finalement été renommé en R.

Réponse

Il nest jamais obligatoire dutiliser $ lors du référencement dans R, mais cela facilite le référencement dans de nombreux cas. Le $ in R est généralement utilisé lors du référencement dun objet nommé dans un objet de données plus volumineux. Cela peut être appliqué à des objets tels que des listes et des blocs de données.

Exemple

Créons dabord une liste contenant des informations aléatoires:

random <- list("numbers" = c(1, 2, 3), "places" = list("countries" = c("Canada", "South Africa"), "cities" = c("Vancouver", "Cape Town")))

Voici la structure de notre liste aléatoire:

> random

$numbers

[1] 1 2 3

$places

$places$countries

[1] "Canada" "South Africa"

$places$cities

[1] "Vancouver" "Cape Town"

Nous pouvons référencer les différents éléments de la liste exactement de la même manière que celle indiquée dans la structure ci-dessus. Par exemple, si nous voulons la liste complète des «lieux», qui contient des informations sur le pays et la ville, nous pouvons la référencer comme suit:

> random$places

$countries

[1] "Canada" "South Africa"

$cities

[1] "Vancouver" "Cape Town"

Si nous ne voulons que les noms de pays, nous pouvons utiliser $ pour explorer plus en profondeur la liste:

random$places$countries

[1] "Canada" "South Africa"

Gardez à lesprit que nous ne peut pas utiliser le $ lors du référencement de vecteurs atomiques (vecteurs contenant des valeurs uniques, telles que des nombres ou des chaînes de caractères). Par exemple, les noms de pays ci-dessus sont stockés dans un vecteur atomique. Nous devons utiliser le nom ou le numéro dindex, pour récupérer un seul pays:

> random$places$countries[2]

[1] "South Africa"

Même si le pays avait un nom dindex, nous ne pourrons pas utiliser le $.

> countries <- c("country1" = "Canada", "country2" = "South Africa")

Essayons de récupérer "Afrique du Sud" avec le $:

> countries$country2

Error in countries$country2 : $ operator is invalid for atomic vectors

Nous obtenons une erreur, car les pays sont un vecteur atomique. Dans ce cas, nous devons utiliser le nom ou le numéro dindex:

> countries["country2"] #using the name of the item

country2

"South Africa"

> countries[2] #using the index of the country within the vector

country2

"South Africa"

Jespère que cela vous aidera!

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *