validateMap | R Documentation |
validate a map from a classification or regression model. This can be useful to update the accuracy assessment after filtering, e.g. for a minimum mapping unit.
validateMap(
map,
valData,
responseCol,
nSamplesV = 500,
mode = "classification",
classMapping = NULL
)
map |
SpatRaster. The classified map. |
valData |
sf object with validation data (POLYGONs or POINTs). |
responseCol |
Character. Column containing the validation data in attribute table of |
nSamplesV |
Integer. Number of pixels to sample for validation (only applies to polygons). |
mode |
Character. Either 'classification' or 'regression'. |
classMapping |
optional data.frame with columns |
Returns a structured list includng the preformance and confusion-matrix of your then validated input data
library(caret)
library(terra)
## Training data
poly <- readRDS(system.file("external/trainingPolygons_lsat.rds", package="RStoolbox"))
## Split training data in training and validation set (50%-50%)
splitIn <- createDataPartition(poly$class, p = .5)[[1]]
train <- poly[splitIn,]
val <- poly[-splitIn,]
## Classify (deliberately poorly)
sc <- superClass(lsat, trainData = train, responseCol = "class", nSamples = 50, model = "mlc")
## Polish map with majority filter
polishedMap <- focal(sc$map, matrix(1,3,3), fun = modal)
## Validation
## Before filtering
val0 <- validateMap(sc$map, valData = val, responseCol = "class",
classMapping = sc$classMapping)
## After filtering
val1 <- validateMap(polishedMap, valData = val, responseCol = "class",
classMapping = sc$classMapping)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.