lettura normale

I data frame nel linguaggio R

I data frames in R sono strutture dati fondamentali per l'analisi statistica. Pensali come tabelle in cui puoi memorizzare dati di diversi tipi: numeri, stringhe, fattori. Sono simili alle tabelle di un foglio di calcolo Excel o Calc.

Creazione di un data frame

Per creare un data frame, utilizza la funzione data.frame().

Ecco un esempio semplice:

  1. data_frame_esempio <- data.frame(
  2. Colonna1 = c(10, 20, 30),
  3. Colonna2 = c("a", "b", "c")
  4. )

In questo esempio, abbiamo creato un data frame con due colonne: una numerica e una di stringhe.

Se visualizzi il contenuto del data frame con l'istruzione print() puoi vedere una tabella.

print(data_frame_esempio)

  Colonna1 Colonna2
1        10        a
2        20        b
3        30        c

Accesso ai dati

Puoi accedere ai dati di un data frame in diversi modi. Per esempio:

  • Puoi usare il nome della colonna:

    data_frame_esempio$Colonna1

    [1] 10 20 30

  • Puoi usare gli indici. Ad esempio per accedere al dato nella prima riga e seconda colonna dovresti scrivere:

    data_frame_esempio[1,2]

    [1] "a"

La gestione dei dati

I data frames possono essere manipolati in svariati modi. Ecco alcune operazioni comuni:

Per aggiungere una nuova colonna al data frame puoi usare questa sintassi:

data_frame_esempio$NuovaColonna <- c(4, 5, 6)

Ora il data frame è composto da tre colonne.

print(data_frame_esempio)

  Colonna1 Colonna2 NuovaColonna
1       10        a            4
2       20        b            5
3       30        c            6

Per aggiungere una nuova riga si usa la funzione rbind()

data_frame_esempio = rbind(data_frame_esempio, c(70, "d", 7))

Adesso il data frame è composto da quattro righe:

print(data_frame_esempio)

  Colonna1 Colonna2 NuovaColonna
1       10        a            4
2       20        b            5
3       30        c            6
4       70        d            8

Per ordinare i dati del data frame puoi usare questa sintassi:

data_frame_esempio = data_frame_esempio[order(data_frame_esempio$Colonna1, decreasing=TRUE),]

Ora la tabella è ordinata in modo decrescente rispetto ai dati della prima colonna.

print(data_frame_esempio)

  Colonna1 Colonna2 NuovaColonna
4       70        d            7
3       30        c            6
2       20        b            5
1       10        a            4

Per filtrare i dati di un dataset puoi usare questa sintassi:

subset(data_frame_esempio, Colonna1 > 20)

Questo comando seleziona i dati del data frame che hanno un valore maggiore di 20 nella prima colonna.

print(data_frame_esempio)

  Colonna1 Colonna2 NuovaColonna
4       70        d            7
3       30        c            6

Altre funzioni utili dei data frame

Alcune funzioni utili da conoscere:

  • str()
    Mostra la struttura del data frame.

    str(data_frame_esempio)

    'data.frame':   4 obs. of  3 variables:
     $ Colonna1    : chr  "70" "30" "20" "10"
     $ Colonna2    : chr  "d" "c" "b" "a"
     $ NuovaColonna: chr  "7" "6" "5" "4"

  • summary()
    Fornisce un riassunto statistico delle colonne.

    summary(data_frame_esempio)

     Colonna1             Colonna2               NuovaColonna      
     Length:4              Length:4               Length:4          
     Class :character    Class :character     Class :character  
     Mode  :character   Mode  :character   Mode  :character 

  • head()
    Mostra solo le prime righe del data frame. E' particolarmente utile se il data frame è molto grande.

    head(data_frame_esempio)

      Colonna1 Colonna2 NuovaColonna
    1       10        a            4
    2       20        b            5
    3       30        c            6
    4       70        d            8

I data frames sono strumenti potenti in R per la gestione e analisi dei dati.

Una volta che ti abitui a manipolarli e a esplorarli, scoprirai che sono essenziali per una vasta gamma di applicazioni statistiche e di data analysis.

Ricorda, la pratica è fondamentale: esperimenta con i data frames per familiarizzare con le loro potenzialità.




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




FacebookTwitterLinkedinLinkedin