predict.nnet {nnet} | R Documentation

## Predict New Examples by a Trained Neural Net

### Description

Predict new examples by a trained neural net.

### Usage

    predict(object, newdata, type=c("raw","class"), ...)

### Arguments

`object` | an object of class `nnet` as returned by `nnet`.
`newdata` | matrix or data frame of test examples. A vector is considered to be a row vector comprising a single case.
`type` | Type of output

### Details

This function is a method for the generic function `predict()` for class `"nnet"`. It can be invoked by calling `predict(x)` for an object `x` of the appropriate class, or directly by calling `predict.nnet(x)` regardless of the class of the object.

### Value

If `type="raw"`, the matrix of values returned by the trained network; if `type="class"`, the corresponding class (which is probably only useful if the net was generated by `nnet.formula`).

### See Also

`nnet`, `which.is.max`

### Examples

    data(iris3)
    # use half the iris data
    ir <- rbind(iris3[,,1],iris3[,,2],iris3[,,3])
    targets <- class.ind( c(rep("s", 50), rep("c", 50), rep("v", 50)) )
    samp <- c(sample(1:50,25), sample(51:100,25), sample(101:150,25))
    ir1 <- nnet(ir[samp,], targets[samp,],size=2, rang=0.1,
                decay=5e-4, maxit=200)
    test.cl <- function(true, pred){
            true <- max.col(true)
            cres <- max.col(pred)
            table(true, cres)
    }
    test.cl(targets[-samp,], predict(ir1, ir[-samp,]))

    # or
    ird <- data.frame(rbind(iris3[,,1], iris3[,,2], iris3[,,3]),
            species=c(rep("s",50), rep("c", 50), rep("v", 50)))
    ir.nn2 <- nnet(species ~ ., data=ird, subset=samp, size=2, rang=0.1,
                decay=5e-4, maxit=200)
    table(ird$species[-samp], predict(ir.nn2, ird[-samp,], type="class"))