R (linguaggio di programmazione): Perché R si chiama R?


Migliore risposta

Credo che questa storia non sia aneddotica. Come tutti hanno detto, R è basato su S e immagino che S stia per linguaggio statistico e S fosse un linguaggio open source. Vedendo limportanza crescente di S, IBM voleva acquisirlo, ma la parte del team principale di S voleva mantenerlo come open source e la parte rimanente accettò la proposta di IBM. Successivamente la parte acquisita da IBM divenne S-plus e la comunità open source prosperò e fece molte aggiunte a S e che alla fine ribattezzò R.

Risposta

Non è mai obbligatorio da usare $ quando si fa riferimento in R, ma in molti casi rende semplice il riferimento. Il $ in R viene solitamente utilizzato quando si fa riferimento a un oggetto denominato allinterno di un oggetto dati più grande. Può essere applicato a oggetti quali elenchi e frame di dati.

Esempio

Creiamo prima un elenco che contenga alcune informazioni casuali:

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

Questa è la struttura del nostro elenco casuale:

> random

$numbers

[1] 1 2 3

$places

$places$countries

[1] "Canada" "South Africa"

$places$cities

[1] "Vancouver" "Cape Town"

Possiamo fare riferimento ai diversi elementi allinterno dellelenco esattamente allo stesso modo mostrato nella struttura sopra. Ad esempio, se vogliamo lintero elenco "luoghi", che contiene informazioni sul paese e sulla città, possiamo fare riferimento ad esso in questo modo:

> random$places

$countries

[1] "Canada" "South Africa"

$cities

[1] "Vancouver" "Cape Town"

Se vogliamo solo i nomi dei paesi, possiamo utilizzare $ per visualizzare più in basso lelenco:

random$places$countries

[1] "Canada" "South Africa"

Tieni presente che noi non è possibile utilizzare $ quando si fa riferimento a vettori atomici (vettori che contengono valori singoli, come numeri o stringhe di caratteri). Ad esempio, i nomi dei paesi sopra sono memorizzati allinterno di un vettore atomico. Dobbiamo utilizzare il nome o il numero dellindice per recuperare un singolo paese:

> random$places$countries[2]

[1] "South Africa"

Anche se il paese avesse un nome di indice, non saremo in grado di utilizzare $.

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

Proviamo a recuperare "Sud Africa" ​​con $:

> countries$country2

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

Otteniamo un errore, perché i paesi sono un vettore atomico. In questo caso, dobbiamo utilizzare il nome o il numero dellindice:

> 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"

Spero che questo aiuti!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *