Come risolvere il problema: errore in stripchart.default(x1, …): metodo di stampa non valido
Un errore che potresti riscontrare in R è:
Error in stripchart.default(x1, ...): invalid plotting method
Questo errore si verifica in genere quando si tenta di creare un grafico a dispersione utilizzando un frame di dati anziché un vettore.
Questo tutorial spiega esattamente come correggere questo errore.
Come riprodurre l’errore
Supponiamo di avere il seguente frame di dati in R:
#create data frame
df <- data. frame (x=c(1, 2, 2, 4, 7, 8, 9),
y=c(5, 5, 8, 10, 13, 13, 18))
#view data frame
df
xy
1 1 5
2 2 5
3 2 8
4 4 10
5 7 13
6 8 13
7 9 18
Supponiamo ora di provare a utilizzare la seguente sintassi per creare un grafico a dispersione:
#attempt to create scatter plot
plot(df[1], df[2])
Error in stripchart.default(x1, ...): invalid plotting method
Riceviamo un errore perché df[1] e df[2] sono in realtà frame di dati e la funzione plot() accetta solo vettori come input.
Possiamo usare la funzione class() per verificare che df[1] e df[2] siano entrambi frame di dati:
#display class of df[1] and df[2]
class(df[1]);class(df[2])
[1] "data.frame"
[1] "data.frame"
Come correggere l’errore
Il modo per correggere questo errore è assicurarsi di utilizzare i vettori come input per la funzione plot() .
Ad esempio, possiamo utilizzare la seguente sintassi per creare un grafico a dispersione:
#create scatterplot
plot(df[, 1], df[, 2])
Oppure potremmo usare la seguente sintassi per creare un grafico a dispersione:
#create scatterplot
plot(df$x, df$y)
Tieni presente che siamo in grado di creare un grafico a dispersione utilizzando entrambi i metodi senza errori perché ogni volta abbiamo utilizzato i vettori come input per la funzione plot() .
Risorse addizionali
I seguenti tutorial spiegano come risolvere altri errori comuni in R:
Come risolvere il problema in R: i nomi non corrispondono ai nomi precedenti
Come risolvere in R: la lunghezza di un oggetto più lungo non è un multiplo della lunghezza di un oggetto più corto
Come risolvere in R: i contrasti possono essere applicati solo a fattori con 2 o più livelli