predict.svm {e1071} | R Documentation |
This function predicts values based upon a model trained by svm
.
predict(object, newdata, ..., na.action = na.omit)
object |
Object of class "svm" , created by svm . |
newdata |
A matrix containing the new input data. A vector will be transformed to a n x 1 matrix. |
na.action |
A function to specify the action to be taken if `NA's are
found. The default action is na.omit , which leads to rejection of cases
with missing values on any required variable. An alternative
is na.fail , which causes an error if NA cases
are found. (NOTE: If given, this argument must be named.) |
... |
Currently not used. |
The predicted value (for classification: the label, for density
estimation: TRUE
or FALSE
).
If the training set was scaled by svm
(done by default), the
new data is scaled accordingly using scale and center of
the training data.
David Meyer (based on C++-code by Chih-Chung Chang and Chih-Jen Lin)
david.meyer@ci.tuwien.ac.at
data(iris) attach(iris) ## classification mode # default with factor response: model <- svm (Species~., data=iris) # alternatively the traditional interface: x <- subset (iris, select = -Species) y <- Species model <- svm (x, y) print (model) summary (model) # test with train data pred <- predict (model, x) # (same as:) pred <- predict (model) # Check accuracy: table (pred,y) ## try regression mode on two dimensions # create data x <- seq (0.1,5,by=0.05) y <- log(x) + rnorm (x, sd=0.2) # estimate model and predict input values m <- svm (x,y) new <- predict (m,x) # visualize plot (x,y) points (x, log(x), col=2) points (x, new, col=4) ## density-estimation # create 2-dim. normal with rho=0: X <- data.frame (a=rnorm (1000), b=rnorm (1000)) attach (X) # traditional way: m <- svm (X, gamma=0.1) # formula interface: m <- svm (~., data=X, gamma=0.1) # or: m <- svm (~a+b, gamma=0.1) # test: newdata <- data.frame(a=c(0,4), b=c(0,4)) predict (m, newdata)