Come creare tabelle di frequenza relativa in r


Una tabella di frequenza relativa indica la frequenza con cui compaiono determinati valori in un set di dati rispetto al numero totale di valori nel set di dati.

È possibile utilizzare la seguente sintassi di base per creare una tabella di frequenza in R:

 table(data)/length(data)

La funzione table() calcola la frequenza di ogni singolo valore di dati e la funzione length() calcola il numero totale di valori nel set di dati.

Quindi, dividendo ogni singola frequenza per la lunghezza del set di dati, otteniamo la frequenza relativa di ciascun valore nel set di dati.

Gli esempi seguenti mostrano come utilizzare questa sintassi nella pratica.

Esempio 1: tabella delle frequenze relative per un vettore

Il codice seguente mostra come creare una tabella di frequenza relativa per un singolo vettore in R:

 #define data
data <- c('A', 'A', 'B', 'B', 'B', 'C', 'C', 'C', 'C', 'C')

#create relative frequency table
table(data)/length(data)

  ABC
0.2 0.3 0.5

Ecco come interpretare la tabella:

  • Il 20% di tutti i valori nel set di dati sono la lettera A
  • Il 30% di tutti i valori nel set di dati sono la lettera B
  • Il 50% di tutti i valori nel set di dati sono la lettera C

Esempio 2: tabella delle frequenze relative per una colonna di frame di dati

Il codice seguente mostra come creare una tabella di frequenza relativa per una colonna di un frame di dati in R:

 #define data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'A', 'B', 'B', 'C'),
                 wins=c(2, 9, 11, 12, 15, 17, 18, 19),
                 dots=c(1, 2, 2, 2, 3, 3, 3, 3))

#view first few rows of data frame
head(df)

  team wins points
1 to 2 1
2 to 9 2
3 to 11 2
4 to 12 2
5 to 15 3
6 B 17 3

#calculate relative frequency table for 'team' column
table(df$team)/length(df$team)
 
    ABC
0.625 0.250 0.125

Esempio 3: tabella delle frequenze relative per tutte le colonne nel frame di dati

Il codice seguente mostra come creare una tabella di frequenza relativa per ciascuna colonna di un frame di dati in R:

 #define data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'A', 'B', 'B', 'C'),
                 wins=c(2, 9, 11, 12, 15, 17, 18, 19),
                 dots=c(1, 2, 2, 2, 3, 3, 3, 3))

#calculate relative frequency table for each column
sapply(df, function (x) table(x)/nrow(df))

$team
x
    ABC
0.625 0.250 0.125 

$wins
x
    2 9 11 12 15 17 18 19 
0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 

$points
x
    1 2 3 
0.125 0.375 0.500 

Risorse addizionali

Come creare tabelle di frequenza in R
Come creare una tabella di frequenza di più variabili in R

Aggiungi un commento

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