La sintassi di base del linguaggio R

La sintassi di R, pur essendo semplice, richiede attenzione ai dettagli e una comprensione profonda dei suoi elementi.

Variabili e assegnazioni

Iniziamo definendo le variabili. Queste sono come contenitori di dati, che possono assumere diverse forme: numeri, stringhe, booleani.

In R, possiamo assegnare valori alle variabili in due modi:

  • L'operatore <-
    Ad esempio, alla variabile "altezza" viene assegnato il valore 180.

    altezza <- 180

  • L'operatore =
    Ad esempio, alla variabile "nome" viene assegnato il valore "Giovanni".

    nome = "Giovanni"

Strutture di dati

Passiamo ora alle strutture di dati. R gestisce con facilità diversi tipi di strutture, essenziali per organizzare e manipolare i dati.

  • Vettori
    I vettori sono fondamentali in R, sono creati con la funzione c(). Ad esempio, per creare un vettore chiamato "voti" con quattro valori all'interno puoi scrivere.

    voti <- c(18, 21, 24, 30)

    Ogni elemento in `voti` rappresenta un voto specifico. Per accedere al primo elemento del vettore basta scrivere

    voti[1]

  • Matrici
    Una matrice è una struttura bidimensionale, dove ogni elemento è dello stesso tipo. Per definire una matrice in R si usa la funzione matrix. Ad esempio, per creare una matrice 3x3 di numeri interi

    matrice_punti <- matrix(1:9, nrow = 3)

  • Liste
    Le liste possono contenere elementi di tipi diversi. Sono strutture di dati molto versatili perché possono contenere collezioni di dati eterogenee. Ecco un esempio di lista.

    > dati_studente <- list(nome="Marco", eta=22, voti=c(24, 27))

    Per accedere al nome dello studente puoi scrivere

    dati_studente$nome

  • Data Frames
    Sono simili alle tabelle con colonne di diversi tipi. Ecco un esempio pratico di una tabella che contiene diverse informazioni sugli studenti:

    studenti_df <- data.frame(nome=c("Laura", "Paolo"), eta=c(23, 25))

    Per accedere alla colonna delle età

    studenti_df$eta

Controllo del flusso

Nell'analisi dei dati, spesso dobbiamo eseguire operazioni condizionali o ripetitive.

Le strutture condizionali

La principale struttura condizionale è la struttura if-else che esegue un blocco di codice solo se si verifica una particolare condizione.

if (voto >= 18) {
print("Promosso")
} else {
print("Bocciato")
}

Le strutture iterative

Le strutture iterative, invece, realizzano cicli con un numero di iterazioni prefissato oppure indeterminato, perché legato al verificarsi di una particolare condizione di uscita.

Nel linguaggio R puoi usare due strutture cicliche:

  • Cicli For
    Realizzano un ciclo con un numero predefinito di iterazioni. Sono usati anche per iterare nelle strutture di dati.

    voti <- c(18, 21, 24, 30)
    for (i in voti) {
    print(i)
    }

  • Cicli While
    Queste strutture realizzano delle iterazioni basate su una condizione. Possono eseguire un numero determinato o indeterminato di iterazioni. Ecco un esempio pratico:
    count <- 1

    voti <- c(18, 21, 24, 30)
    count=0
    while (count <= length(voti)) {
    print(voti[count])
    count <- count + 1
    }

Funzioni

Le funzioni in R sono blocchi di codice riutilizzabili. Sono definite con la parola chiave `function` e possono avere parametri e un valore di ritorno.

calcolaMedia <- function(voti) {
somma <- sum(voti)
n <- length(voti)
return(somma / n)
}

Una volta creata la funzione, puoi richiamarla da più punti del programma, evitando così di riscrivere più volte lo stesso codice.

voti <- c(18, 21, 24, 30)
media <- calcolaMedia(voti)
print(media)

I commenti

I commenti sono essenziali per la leggibilità del codice. Nel linguaggio R puoi inserire un commento dopo il carattere #.

Ecco un esempio di commento:

# Calcolo della media dei voti
media <- calcolaMedia(voti)

Le righe con il commento non sono eseguite, né interpretate. Servono solo a ricordarsi cosa fa quella parte del codice.

In questo tutorial abbiamo visto i principali aspetti della sintassi del linguaggio R. Nelle prossime lezioni approfondiremo i singoli aspetti di ogni argomento.




Se qualcosa non ti è chiaro, scrivi la tua domanda nei commenti.




FacebookTwitterLinkedinLinkedin