Come risolvere l'errore in r:: `mapping` deve essere creato da `aes()`
Un errore che potresti riscontrare quando usi R è:
Error: `mapping` must be created by `aes()`
Questo errore si verifica quando provi a utilizzare l’argomento aes() durante la creazione di un grafico in ggplot2 e lo usi nel posto sbagliato o lo usi senza la sintassi “mappatura”.
L’esempio seguente mostra come correggere questo errore nella pratica.
Come riprodurre l’errore
Supponiamo di provare a creare un boxplot utilizzando ggplot2:
library (ggplot2) #createdata df <- data. frame (y=c(2, 3, 3, 4, 5, 5, 6, 7, 8, 8, 9, 10, 16, 19, 28), x1=c(1, 2, 2, 3, 5, 6, 8, 8, 9, 9, 10, 11, 12, 15, 15), x2=c(8, 7, 7, 6, 6, 4, 3, 5, 4, 6, 5, 4, 3, 2, 2)) #attempt to create boxplot for 'x1' variable ggplot() + geom_boxplot(df, aes(x=x1)) Error: `mapping` must be created by `aes()`
Riceviamo un errore perché l’argomento aes() viene utilizzato nella funzione geom_boxplot() senza utilizzare la sintassi ‘mapping’.
Come correggere l’errore
Esistono due modi per correggere questo errore.
Metodo 1: utilizzare la sintassi “mapping”.
Un modo per correggere l’errore è utilizzare specificamente la sintassi ‘mapping’ davanti all’argomento aes() :
library (ggplot2) #create data df <- data. frame (y=c(2, 3, 3, 4, 5, 5, 6, 7, 8, 8, 9, 10, 16, 19, 28), x1=c(1, 2, 2, 3, 5, 6, 8, 8, 9, 9, 10, 11, 12, 15, 15), x2=c(8, 7, 7, 6, 6, 4, 3, 5, 4, 6, 5, 4, 3, 2, 2)) #create boxplot for 'x1' variable ggplot() + geom_boxplot(df, mapping=aes(x=x1))
Poiché abbiamo utilizzato esplicitamente la sintassi della mappatura , abbiamo evitato qualsiasi errore.
Metodo 2: utilizzare ‘aes’ nella funzione ggplot
Un altro modo per correggere questo errore è utilizzare l’argomento aes() nella funzione ggplot() :
library (ggplot2) #createdata df <- data. frame (y=c(2, 3, 3, 4, 5, 5, 6, 7, 8, 8, 9, 10, 16, 19, 28), x1=c(1, 2, 2, 3, 5, 6, 8, 8, 9, 9, 10, 11, 12, 15, 15), x2=c(8, 7, 7, 6, 6, 4, 3, 5, 4, 6, 5, 4, 3, 2, 2)) #create boxplot for 'x1' variable ggplot(df, aes(x=x1)) + geom_boxplot()
Siamo in grado di creare con successo il boxplot ed evitare eventuali errori perché abbiamo utilizzato l’argomento aes() nella funzione ggplot() .
Risorse addizionali
I seguenti tutorial spiegano come correggere altri errori comuni in R:
Come risolvere in R: plot.new non è stato ancora chiamato
Come risolvere il problema in R: formula modello non valida in ExtractVars
Come riparare in R: la sostituzione ha lunghezza zero