rf.class.sensitivity: Random Forests class-level sensitivity analysis

Description Usage Arguments Value Note Author(s) References Examples

View source: R/rf.class.sensitivity.R

Description

Performs a sensitivity analysis on a specified class in a random forests model

Usage

1
2
rf.class.sensitivity(x, xdata, d = "1", p = 0.05, nperm = 999,
  plot = TRUE, seed = NULL, ...)

Arguments

x

randomForest class object

xdata

Independent variables used in model

d

Which class to perturb

p

Proportion of class to be randomized

nperm

Number of permutations

plot

Plot results (TRUE/FALSE)

seed

Random seed value

...

Additional arguments passed to randomForest

Value

List object with following components: @return mean.error Mean of RMSE @return sd.error Standard deviation of RMSE @return rmse Root mean squared error (RMSE) for each perturbed probability @return probs data.frame with "true" estimate in first column and perturbed probabilities in subsequent columns.

Note

Wildlife survey data likely decreases the proportion of imperfect detection (false absences or presences) but can still be a source of error. Because of this it is often necessary to test the model sensitivity of a given class (eg., used verses available habitat).

Model sensitivity of false absences is evaluated by randomly assigning a proportion of the specified positive class to the other, refitting the model and estimating the probabilities. Each perturbed estimate is compared against the "true" estimate. Currently only supports binomial models.

Author(s)

Jeffrey S. Evans <jeffrey_evans@tnc.org>

References

Evans J.S., M.A. Murphy, Z.A. Holden, S.A. Cushman (2011). Modeling species distribution and change using Random Forests CH.8 in Predictive Modeling in Landscape Ecology eds Drew, CA, Huettmann F, Wiersma Y. Springer

Gardner, R.H., R.V. O'Neill, M.G. Turner, and V.H. Dale (1989). Quantifying scale-dependent effects of animal movements with simple percolation models. Landscape Ecology 3:217-227.

Examples

1
2
3
4
5
6
7
8
9
library(randomForest)	
data(iris)
  y <- as.factor(ifelse(iris$Species == "setosa" | 
                 iris$Species == "virginica", 1, 0) )
    xdata <- iris[,1:4] 

rf.mdl <- randomForest(xdata, y, ntree=501) 
  ua <- rf.class.sensitivity(rf.mdl, xdata=xdata, nperm=20, ntree=501, plot=TRUE)
      

Example output

rfUtilities 2.1-1
Type rfu.news() to see new features/changes/bug fixes.
randomForest 4.6-12
Type rfNews() to see new features/changes/bug fixes.
Mean error:  0.1193462 
Standard deviation of error:  0.004256294 

rfUtilities documentation built on Oct. 3, 2019, 9:04 a.m.