Il problema è che nel modello sono presenti più covariate. Il plot()
verrà eseguito automaticamente solo se l'argomento data=
ha esattamente tre colonne (una delle quali è una risposta). Ad esempio, nella pagina ?plot.svm
aiuto, è possibile chiamare
data(cats, package = "MASS")
m1 <- svm(Sex~., data = cats)
plot(m1, cats)
Quindi, dal momento che si può mostrare solo due dimensioni su un terreno, è necessario specificare ciò che si desidera utilizzare per x
e y
quando si dispone di più di una da scegliere
cplus<-cats
cplus$Oth<-rnorm(nrow(cplus))
m2 <- svm(Sex~., data = cplus)
plot(m2, cplus) #error
plot(m2, cplus, Bwt~Hwt) #Ok
plot(m2, cplus, Hwt~Oth) #Ok
Ecco perché si ottiene l'errore "Formula mancante".
C'è anche un'altra cattura. Lo plot.svm
traccerà le variabili continue solo lungo gli assi x
e . Le lenti a contatto data.frame ha solo variabili categoriali. La funzione plot.svm
semplicemente non supporta questo per quanto posso dire. Dovrai decidere come vuoi riassumere le informazioni nella tua visualizzazione.