I tipi di dati in R da conoscere

Come in ogni altro linguaggio di programmazione, anche nella programmazione in R sono presenti diversi tipi di dati grazie ai quali i programmatori e le programmatrici possono strutturare meglio il loro codice. Oltre ai tipi di dati di base, in R esistono anche tipi di dati più complessi.

A cosa servono i tipi di dati in R?

Spesso, quando si programma, è necessario elaborare i dati. Per poter memorizzare questi dati in modo sensato, gli sviluppatori e le sviluppatrici possono scegliere fra diversi tipi di dati nella maggior parte dei linguaggi di programmazione. Alcuni esempi di tipi di dati sono i numeri e le catene di caratteri.

Di norma, per tipi di dati diversi sono definiti degli operatori R differenti. Pertanto, i tipi di dati aiutano i programmatori e le programmatrici anche a elaborare i dati in forma adeguata e quindi ad aumentare l’efficienza dei programmi.

I diversi tipi di dati in R

In R esistono vari tipi di dati. Alcuni di questi dovrebbero esserti già noti da altri linguaggi di programmazione, a meno che tu non abbia appena iniziato a imparare a programmare. Per eseguire un controllo del tipo di dati in R, puoi utilizzare il comando R class(), che accetta una variabile a piacere come parametro di passaggio e restituisce il tipo di dati di tale variabile come risultato.

Tipi di dati numerici

I tipi di dati numerici fanno parte dei tipi di dati di base in R e servono a rappresentare valori numerici. Si distinguono fra numeric per i numeri reali, integer per i numeri interi e complex per i numeri complessi con parte immaginaria.

x <- 3.14
y <- 42
z <- 3 + 2i
print(class(x))
print(class(y))
print(class(z))
R

Il risultato di questo codice si presenta così:

"numeric"
"numeric"
"complex"

A questo punto potresti chiederti come mai il tipo di dati numeric sia riportato due volte, nonostante la variabile y sia un integer o numero intero. La spiegazione è semplice: gli interi in R sono sempre anche numeric. Per comunicare all’interprete che si tratta effettivamente di un intero, devi aggiungere il suffissoL ai numeri interi che utilizzi:

y <- 42L
print(class (y))
R

A questo punto, richiamando la funzione come sopra indicato si ottiene il risultato previsto:

"integer"

Catene di caratteri

Per rappresentare un testo o un carattere puoi ricorrere al tipo di dati character. I dati di questo tipo, detti stringhe in R, possono essere contrassegnati in R con virgolette semplici o doppie:

x <- "Ciao mondo!"
y <- 'Hello world!'
print(class(x))
print(class(y))
R

Anche in questo caso puoi usare la funzione class() per visualizzare il tipo di dati delle variabili utilizzate:

"character"
"character"

Tipi di dati logici

Le variabili con tipo di dati logico, che in R vanno sotto la denominazione logical, sono valutate dall’interprete come TRUE o FALSE. In questo modo è possibile formalizzare condizioni o espressioni logiche. Spesso è necessario farlo per gestire il flusso di controllo del programma.

x <- TRUE
y <- FALSE
print(class(x))
print(class(y))
R

Osservando il tipo di dati delle due variabili noterai che è stato loro assegnato il tipo di dati logical:

"logical"
"logical"

Dati grezzi

Il linguaggio di programmazione R dispone di un apposito tipo di dati per mostrare le variabili come sequenza di byte. Questo tipo di dati in R si chiama raw. Per convertire i tuoi dati in dati grezzi, utilizza la funzione charToRaw(). Per il processo inverso è disponibile la funzione rawToChar().

Il codice seguente mostra come convertire una stringa in una sequenza di byte con il tipo di dati raw:

x <- "Ciao mondo!"
y <- charToRaw(x)
print(y)
print(class(y))
R

Il codice precedente dà come risultato innanzitutto la sequenza di byte sotto forma di numeri esadecimali. A seguire, la chiamata della funzione class() permette di visualizzare il tipo di dati della variabile y:

43 69 61 6f 20 6d 6f 6e 64 6f 21
"raw"
N.B.

In R è anche possibile convertire i dati in un altro tipo di dati. Spesso questa modifica è particolarmente facile in R: nel caso di una stringa composta da un numero (ad esempio “42”) è possibile convertirla nel tipo di dati numeric per mezzo di una semplice addizione con 0.

Strutture dati in R

Oltre ai tipi di dati di base, in R sono disponibili varie strutture dati diverse, grazie alle quali i programmatori e le programmatrici possono strutturare meglio i loro dati. Queste strutture dati, come i data frame R, sono più complesse dei semplici tipi di dati e sono spesso multidimensionali.

Consiglio

Ti piacerebbe imparare a programmare in R? Allora pubblica sul web il tuo nuovo progetto in R con uno spazio web comprensivo di hosting adattabile alle tue esigenze.

Hai trovato questo articolo utile?
Per offrirti una migliore esperienza di navigazione online questo sito web usa dei cookie, propri e di terze parti. Continuando a navigare sul sito acconsenti all’utilizzo dei cookie. Scopri di più sull’uso dei cookie e sulla possibilità di modificarne le impostazioni o negare il consenso.
Page top