IniziaInizia gratis

Livelli dei fattori

Quando ricevi per la prima volta un set di dati, troverai spesso fattori che presentano livelli specifici. Tuttavia, a volte potresti voler modificare i nomi di questi livelli per maggiore chiarezza o per altri motivi. R ti permette di farlo con la funzione levels():

levels(factor_vector) <- c("name1", "name2",...)

Un buon esempio è rappresentato dai dati grezzi raccolti attraverso un sondaggio. Una domanda comune in questi questionari riguarda il sesso della persona intervistata. Qui, per semplicità, sono state registrate solo due categorie: "M" e "F". (Di solito, un sondaggio ben strutturato prevede più categorie, ma comunque i dati categorici vengono memorizzati come fattori.

survey_vector <- c("M", "F", "F", "M", "M")

Utilizzare abbreviazioni come "M" e "F" può essere comodo se stai raccogliendo i dati con carta e penna, ma può creare confusione durante la fase di analisi. Per questo, vorrai poter cambiare i livelli dei fattori "M" e "F" in "Male" e "Female" per una maggiore chiarezza.

Attenzione: l'ordine di assegnazione dei livelli è importante. Se digiti levels(factor_survey_vector), vedrai che verrà visualizzato l’output [1] "F" "M". Se invece non specifichi i livelli del fattore quando crei il vettore, R li ordinerà automaticamente in ordine alfabetico. Per mappare correttamente "F" su "Female" e "M" su "Male", devi assegnare i livelli in quest’ordine c("Female", "Male").

Questo esercizio fa parte del corso

Introduzione a R

Visualizza il corso

Istruzioni dell'esercizio

  • Osserva il codice che crea un vettore di fattori a partire da survey_vector. Per la prossima istruzione, dovresti utilizzare factor_survey_vector.
  • Modifica i livelli dei fattori di factor_survey_vector in c("Female", "Male"). Fai attenzione all’ordine degli elementi nel vettore.

Esercizio pratico interattivo

Prova questo esercizio completando il codice di esempio.

# Code to build factor_survey_vector
survey_vector <- c("M", "F", "F", "M", "M")
factor_survey_vector <- factor(survey_vector)

# Specify the levels of factor_survey_vector
levels(factor_survey_vector) <-

factor_survey_vector
Modifica ed esegui il codice