Title: | Conducts Analyses Informing Ecosystem Restoration Decisions |
---|---|
Description: | Three sets of data and functions for informing ecosystem restoration decisions, particularly in the context of the U.S. Army Corps of Engineers. First, model parameters are compiled as a data set and associated metadata for over 300 habitat suitability models developed by the U.S. Fish and Wildlife Service (USFWS 1980, <https://www.fws.gov/policy-library/870fw1>). Second, functions for conducting habitat suitability analyses both for the models described above as well as generic user-specified model parameterizations. Third, a suite of decision support tools for conducting cost-effectiveness and incremental cost analyses (Robinson et al. 1995, IWR Report 95-R-1, U.S. Army Corps of Engineers). |
Authors: | S. Kyle McKay [aut, cre]
|
Maintainer: | S. Kyle McKay <[email protected]> |
License: | CC0 |
Version: | 2.0.0 |
Built: | 2025-03-12 04:46:41 UTC |
Source: | https://github.com/cran/ecorest |
annualizer
computes time-averaged quantities based on linear interpolation.
annualizer(timevec, benefits)
annualizer(timevec, benefits)
timevec |
numeric vector of time intervals. |
benefits |
numeric vector of values to be interpolated. |
A time-averaged value over the specified time horizon.
Robinson R., Hansen W., and Orth K. 1995. Evaluation of environmental investments procedures manual interim: Cost effectiveness and incremental cost analyses. IWR Report 95-R-1. Institute for Water Resources, U.S. Army Corps of Engineers, Alexandria, Virginia.
#Constant value through time annualizer(c(0,50), c(100,100)) annualizer(seq(0,50), rep(100,51)) #Simple time series annualizer(seq(0,50), seq(0,50)) #User-specified time intervals demo.timevec <- c(0,2,20,50) demo.ben <- c(0,100,90,80) annualizer(demo.timevec, demo.ben)
#Constant value through time annualizer(c(0,50), c(100,100)) annualizer(seq(0,50), rep(100,51)) #Simple time series annualizer(seq(0,50), seq(0,50)) #User-specified time intervals demo.timevec <- c(0,2,20,50) demo.ben <- c(0,100,90,80) annualizer(demo.timevec, demo.ben)
BBfinder
this analysis examines the slope of the cost-effectiveness frontier to
isolate how unit cost (cost/benefit) increases with increasing environmental benefit.
Restoration actions with the lowest slope of unit cost are considered "best buys".
BBfinder(benefit, cost, CE)
BBfinder(benefit, cost, CE)
benefit |
a vector of restoration benefits. Typically, these are time-averaged ecological outcomes (e.g., average annual habitat units). Often project benefits are best presented as the "lift" associated with a restoration action (i.e., the benefits of an alternative minus the benefits of a "no action" plan). |
cost |
a vector of restoration costs. Typically, these are monetary costs associated with a given restoration action such as project first cost or annualized economic cost. Notably, these functions are agnostic to units, so costs could also be non-monetary such as lost political capital or social costs of each alternative. |
CE |
numeric vector of 0's and 1's indicating whether a plan is cost-effective (1) or non-cost-effective (0). Can be derived from ecorest::CEfinder. |
A list with summaries of all restoration actions as well as best buy plans only.
Robinson R., Hansen W., and Orth K. 1995. Evaluation of environmental investments procedures manual interim: Cost effectiveness and incremental cost analyses. IWR Report 95-R-1. Institute for Water Resources, U.S. Army Corps of Engineers, Alexandria, Virginia
#Identify cost-effective actions based on random vectors of benefits and costs benefit <- runif(50,min=0,max=10) cost <- runif(50, min=0,max=1000) CE <- CEfinder(benefit, cost) BBfinder(benefit, cost, CE) #Identify cost-effective actions based on a small number of user-specified benefits and costs restben <- c(0, 10, 5, 20, 20) restcost <- c(0, 100, 100, 200, 150) restCE <- CEfinder(restben, restcost) BBfinder(restben, restcost, restCE)
#Identify cost-effective actions based on random vectors of benefits and costs benefit <- runif(50,min=0,max=10) cost <- runif(50, min=0,max=1000) CE <- CEfinder(benefit, cost) BBfinder(benefit, cost, CE) #Identify cost-effective actions based on a small number of user-specified benefits and costs restben <- c(0, 10, 5, 20, 20) restcost <- c(0, 100, 100, 200, 150) restCE <- CEfinder(restben, restcost) BBfinder(restben, restcost, restCE)
CEfinder
returns cost-effectiveness analysis for a particular set of alternatives.
CEfinder(benefit, cost)
CEfinder(benefit, cost)
benefit |
a vector of restoration benefits. Typically, these are time-averaged ecological outcomes (e.g., average annual habitat units). Often project benefits are best presented as the "lift" associated with a restoration action (i.e., the benefits of an alternative minus the benefits of a "no action" plan). |
cost |
a vector of restoration costs. Typically, these are monetary costs associated with a given restoration action such as project first cost or annualized economic cost. Notably, these functions are agnostic to units, so costs could also be non-monetary such as lost political capital or social costs of each alternative. |
A numeric vector identifying each plan as cost-effective (1) or non-cost-effective (0). The cost-effective actions comprise the Pareto frontier of non-dominated alternatives at a given level of cost or benefit.
Robinson R., Hansen W., and Orth K. 1995. Evaluation of environmental investments procedures manual interim: Cost effectiveness and incremental cost analyses. IWR Report 95-R-1. Institute for Water Resources, U.S. Army Corps of Engineers, Alexandria, Virginia
#Identify cost-effective actions based on random vectors of benefits and costs CEfinder(runif(50,min=0,max=10), runif(50, min=0,max=1000)) #Identify cost-effective actions based on a small number of user-specified benefits and costs restben <- c(0, 10, 5, 20, 20) restcost <- c(0, 100, 100, 200, 150) CEfinder(restben, restcost)
#Identify cost-effective actions based on random vectors of benefits and costs CEfinder(runif(50,min=0,max=10), runif(50, min=0,max=1000)) #Identify cost-effective actions based on a small number of user-specified benefits and costs restben <- c(0, 10, 5, 20, 20) restcost <- c(0, 100, 100, 200, 150) CEfinder(restben, restcost)
CEICAplotter
Plots Cost-effective Incremental Cost Analysis (CEICA) in *.jpeg format.
CEICAplotter(altnames, benefit, cost, CE, BB, figure.name)
CEICAplotter(altnames, benefit, cost, CE, BB, figure.name)
altnames |
vector of numerics or characters as unique restoration action identifiers. |
benefit |
a vector of restoration benefits. Typically, these are time-averaged ecological outcomes (e.g., average annual habitat units). Often project benefits are best presented as the "lift" associated with a restoration action (i.e., the benefits of an alternative minus the benefits of a "no action" plan). |
cost |
a vector of restoration costs. Typically, these are monetary costs associated with a given restoration action such as project first cost or annualized economic cost. Notably, these functions are agnostic to units, so costs could also be non-monetary such as lost political capital or social costs of each alternative. |
CE |
numeric vector of 0's and 1's indicating whether a plan is cost-effective (1) or non-cost-effective (0). Can be derived from ecorest::CEfinder. |
BB |
numeric vector of 0's and 1's indicating whether a plan is a best buy (1) or not (0). Can be derived from ecorest::BBfinder. |
figure.name |
output figure file name structured as "filename.jpeg". |
A multi-panel *.jpeg figure summarizing cost-effectiveness and incremental cost analyses.
Robinson R., Hansen W., and Orth K. 1995. Evaluation of environmental investments procedures manual interim: Cost effectiveness and incremental cost analyses. IWR Report 95-R-1. Institute for Water Resources, U.S. Army Corps of Engineers, Alexandria, Virginia
#Identify cost-effective actions based on random vectors of benefits and costs altnames<- paste("Alt",seq(1,50), sep="") benefit <- runif(50,min=0,max=10) cost <- runif(50, min=0,max=1000) CE <- CEfinder(benefit, cost) BB <- BBfinder(benefit, cost, CE)[[1]][,4] CEICAplotter(altnames, benefit, cost, CE, BB, tempfile("CEICAexample",fileext=".jpeg"))
#Identify cost-effective actions based on random vectors of benefits and costs altnames<- paste("Alt",seq(1,50), sep="") benefit <- runif(50,min=0,max=10) cost <- runif(50, min=0,max=1000) CE <- CEfinder(benefit, cost) BB <- BBfinder(benefit, cost, CE)[[1]][,4] CEICAplotter(altnames, benefit, cost, CE, BB, tempfile("CEICAexample",fileext=".jpeg"))
HSIarimean
uses arithmetic mean to combine suitability indices into an
overarching habitat suitability index.
HSIarimean(x)
HSIarimean(x)
x |
a vector of suitability indices. |
A value of habitat quality from 0 to 1 ignoring NA values.
US Fish and Wildlife Service. (1980). Habitat as a basis for environmental assessment. Ecological Services Manual, 101.
US Fish and Wildlife Service. (1980). Habitat Evaluation Procedures (HEP). Ecological Services Manual, 102.
US Fish and Wildlife Service. (1981). Standards for the Development of Habitat Suitability Index Models. Ecological Services Manual, 103.
#Determine patch quality based on a vector of four suitability indices. HSIarimean(c(0.25, 0.25, 0.25, 0.25)) #Determine patch quality based on a vector of suitability indices with an NA. HSIarimean(c(0.25, 0.25, NA, 0.25)) #Demonstrate error message associated with out of range outcomes. HSIarimean(c(0.25, 0.25, 10.00, 0.25))
#Determine patch quality based on a vector of four suitability indices. HSIarimean(c(0.25, 0.25, 0.25, 0.25)) #Determine patch quality based on a vector of suitability indices with an NA. HSIarimean(c(0.25, 0.25, NA, 0.25)) #Demonstrate error message associated with out of range outcomes. HSIarimean(c(0.25, 0.25, 10.00, 0.25))
HSIeqtn
computes a habitat suitability index based on equations specified
in U.S. Fish and Wildlife Service habitat suitability models contained within ecorest
via HSImodels and HSImetadata. Habitat suitability indices represent an overall assessment
of habitat quality from combining individual suitability indices for multiple independent
variables. The function computes an overall habitat suitability index.
HSIeqtn(HSImodelname, SIV, HSImetadata, exclude = NULL)
HSIeqtn(HSImodelname, SIV, HSImetadata, exclude = NULL)
HSImodelname |
a character string in quotations that must match an existing model name in HSImetadata. |
SIV |
a vector of suitability index values used in the model specified in HSImodelname. |
HSImetadata |
a data frame of HSI model metadata within the ecorest package. |
exclude |
a list of character strings specifying components to be excluded from calculations. |
A numeric of the habitat suitability index ranging from 0 to 1.
US Fish and Wildlife Service. (1980). Habitat as a basis for environmental assessment. Ecological Services Manual, 101.
US Fish and Wildlife Service. (1980). Habitat Evaluation Procedures (HEP). Ecological Services Manual, 102.
US Fish and Wildlife Service. (1981). Standards for the Development of Habitat Suitability Index Models. Ecological Services Manual, 103.
#Compute patch quality for the Barred Owl model (no components) #Allen A.W. 1982. Habitat Suitability Index Models: Barred owl. FWS/OBS 82/10.143. #U.S. Fish and Wildlife Service. https://pubs.er.usgs.gov/publication/fwsobs82_10_143. #Suitability indices relate to density of large trees, mean diameter of overstory trees, #and percent canopy cover of overstory. #Example suitability vectors HSIeqtn("barredowl", c(1,1,1), HSImetadata) #c(1,1,1) should result in 1.00 HSIeqtn("barredowl", c(0.5,1,1), HSImetadata) #c(0.5,1,1) should result in 0.707 HSIeqtn("barredowl", c(0,1,1), HSImetadata) #c(0,1,1) should result in 0.00 HSIeqtn("barredowl", c(0,NA,1), HSImetadata) #c(0,NA,1) should return error message HSIeqtn("barredowl", c(NA,1,1,1), HSImetadata) #c(NA,1,1,1) should return error message #Compute patch quality for the Juvenile Alewife model (two components) #Pardue, G.B. 1983. Habitat Suitability index models: alewife and blueback herring. #U.S. Dept. Int. Fish Wildl. Serv. FWS/OBS-82/10.58. 22pp. #Suitability indices relate to zooplankton density, salinity, and water temperature #Example suitability vectors are c(1,1,1), c(0.5,1,1), and c(0,1,1) HSIeqtn("alewifeJuv", c(1,1,1), HSImetadata) #c(1,1,1) should result in 1.00 HSIeqtn("alewifeJuv", c(0.5,1,1), HSImetadata) #c(0.5,1,1) should result in 0.50 HSIeqtn("alewifeJuv", c(0,1,1), HSImetadata) #c(0,1,1) should result in 0.00 HSIeqtn("alewifeJuv", c(1,NA,1), HSImetadata) #c(1,NA,1) returns error message HSIeqtn("alewifeJuv", c(1,1,1,NA), HSImetadata) #c(1,1,1,NA) returns error message #Compute patch quality for Cutthroat trout model for lacustrine habitats (7 components) #with spawning and lacustrine habitat and with only lacustrine habitat (i.e., #embryo component is excluded). #Hickman, T., and R.F. Raleigh. 1982. Habitat suitability index models: #Cutthroat trout. U.S.D.I. Fish and Wildlife Service. FWS/OBS-82/10.5. 38 pp. #Suitability indices relate to temperature during the warmest period of the year, #maximum temperature during embryo development, minimum dissolved oxygen during #the late growing season, average velocity over spawning areas, average size #of substrate in spawning areas, annual maximal or minimal pH, and percent fines #in the spawning area. #Example suitability vectors are c(1,1,1,1,1,1,1), c(0.5,1,0.5,0,1,1,1) and c(1,NA,0.5,NA,NA,0.5,NA) #c(1,1,1,1,1,1,1) should result in 1 HSIeqtn("cutthroatLacGenLtoe15C", c(1,1,1,1,1,1,1), HSImetadata) #c(0.5,1,0.5,0,1,1,1) should result in 0 HSIeqtn("cutthroatLacGenLtoe15C", c(0.5,1,0.5,0,1,1,1), HSImetadata) #c(1,NA,0.5,NA,NA,0.5,NA) should result in 0.63 HSIeqtn("cutthroatLacGenLtoe15C", c(1,NA,0.5,NA,NA,0.5,NA), HSImetadata, exclude=c("CE"))
#Compute patch quality for the Barred Owl model (no components) #Allen A.W. 1982. Habitat Suitability Index Models: Barred owl. FWS/OBS 82/10.143. #U.S. Fish and Wildlife Service. https://pubs.er.usgs.gov/publication/fwsobs82_10_143. #Suitability indices relate to density of large trees, mean diameter of overstory trees, #and percent canopy cover of overstory. #Example suitability vectors HSIeqtn("barredowl", c(1,1,1), HSImetadata) #c(1,1,1) should result in 1.00 HSIeqtn("barredowl", c(0.5,1,1), HSImetadata) #c(0.5,1,1) should result in 0.707 HSIeqtn("barredowl", c(0,1,1), HSImetadata) #c(0,1,1) should result in 0.00 HSIeqtn("barredowl", c(0,NA,1), HSImetadata) #c(0,NA,1) should return error message HSIeqtn("barredowl", c(NA,1,1,1), HSImetadata) #c(NA,1,1,1) should return error message #Compute patch quality for the Juvenile Alewife model (two components) #Pardue, G.B. 1983. Habitat Suitability index models: alewife and blueback herring. #U.S. Dept. Int. Fish Wildl. Serv. FWS/OBS-82/10.58. 22pp. #Suitability indices relate to zooplankton density, salinity, and water temperature #Example suitability vectors are c(1,1,1), c(0.5,1,1), and c(0,1,1) HSIeqtn("alewifeJuv", c(1,1,1), HSImetadata) #c(1,1,1) should result in 1.00 HSIeqtn("alewifeJuv", c(0.5,1,1), HSImetadata) #c(0.5,1,1) should result in 0.50 HSIeqtn("alewifeJuv", c(0,1,1), HSImetadata) #c(0,1,1) should result in 0.00 HSIeqtn("alewifeJuv", c(1,NA,1), HSImetadata) #c(1,NA,1) returns error message HSIeqtn("alewifeJuv", c(1,1,1,NA), HSImetadata) #c(1,1,1,NA) returns error message #Compute patch quality for Cutthroat trout model for lacustrine habitats (7 components) #with spawning and lacustrine habitat and with only lacustrine habitat (i.e., #embryo component is excluded). #Hickman, T., and R.F. Raleigh. 1982. Habitat suitability index models: #Cutthroat trout. U.S.D.I. Fish and Wildlife Service. FWS/OBS-82/10.5. 38 pp. #Suitability indices relate to temperature during the warmest period of the year, #maximum temperature during embryo development, minimum dissolved oxygen during #the late growing season, average velocity over spawning areas, average size #of substrate in spawning areas, annual maximal or minimal pH, and percent fines #in the spawning area. #Example suitability vectors are c(1,1,1,1,1,1,1), c(0.5,1,0.5,0,1,1,1) and c(1,NA,0.5,NA,NA,0.5,NA) #c(1,1,1,1,1,1,1) should result in 1 HSIeqtn("cutthroatLacGenLtoe15C", c(1,1,1,1,1,1,1), HSImetadata) #c(0.5,1,0.5,0,1,1,1) should result in 0 HSIeqtn("cutthroatLacGenLtoe15C", c(0.5,1,0.5,0,1,1,1), HSImetadata) #c(1,NA,0.5,NA,NA,0.5,NA) should result in 0.63 HSIeqtn("cutthroatLacGenLtoe15C", c(1,NA,0.5,NA,NA,0.5,NA), HSImetadata, exclude=c("CE"))
HSIgeomen
uses geometric mean to combine suitability indices into an
overarching habitat suitability index.
HSIgeomean(x)
HSIgeomean(x)
x |
a vector of suitability indices |
A value of habitat quality from 0 to 1 ignoring NA values.
US Fish and Wildlife Service. (1980). Habitat as a basis for environmental assessment. Ecological Services Manual, 101.
US Fish and Wildlife Service. (1980). Habitat Evaluation Procedures (HEP). Ecological Services Manual, 102.
US Fish and Wildlife Service. (1981). Standards for the Development of Habitat Suitability Index Models. Ecological Services Manual, 103.
#Determine patch quality based on a vector of four suitability indices. HSIgeomean(c(0.25, 0.25, 0.25, 0.25)) #Determine patch quality based on a vector of suitability indices with an NA. HSIgeomean(c(0.25, 0.25, NA, 0.25)) #Determine patch quality based on a vector of suitability indices with a zero-value. HSIgeomean(c(0.25, 0.25, 0.0, 0.25)) #Demonstrate error message associated with out of range outcomes. HSIgeomean(c(2, 2, NA, 3))
#Determine patch quality based on a vector of four suitability indices. HSIgeomean(c(0.25, 0.25, 0.25, 0.25)) #Determine patch quality based on a vector of suitability indices with an NA. HSIgeomean(c(0.25, 0.25, NA, 0.25)) #Determine patch quality based on a vector of suitability indices with a zero-value. HSIgeomean(c(0.25, 0.25, 0.0, 0.25)) #Demonstrate error message associated with out of range outcomes. HSIgeomean(c(2, 2, NA, 3))
Metadata for 351 U.S. Fish and Wildlife Service Habitat suitability index (HSI) models
HSImetadata
HSImetadata
A data frame with 351 rows and 85 variables:
Model name
Model specifications
Scientific nomenclature of modeled taxa
Geographic range of organism
Type of habitat
Citation of original model
Conditions under which model may be applied
Link to individual model source
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Suitability index values for each organism specific condition
Food component equation
Food/reproduction component equation
Roosting-nesting component equation
Cover component equation
Cover roosting component equation
Cover-reproduction-food component equation
Cover-food component equation
Cover-food shrub component equation
Cover-food herbaceous component equation
Winter food component
Summer food component
Fall food component
Water component
Cover breeding component
Brood component
Nest component
Nest-brood cover component
Cover nesting component
Pair habitat component
Water quality component
Reproduction component
Cover reproduction component
Disturbance component
Other component
Larval component
Embryo and larval component
Embryo component
Juvenile component
Fry component
Spawning component
Adult component
Island component
Interspersion component
Non-island component
Winter cover food component
Summer food brood component
Fall spring winter food component
Spring food component
Winter cover component
Fall to spring cover component
Substrate-suspended solids component
Topography component
Temperature component
Juvenile adult component
HSI overarching model equation in R syntax
HSImin
uses the minimum of given suitability indices to calculate an
overarching habitat suitability index.
HSImin(x)
HSImin(x)
x |
a vector of suitability indices |
A value of habitat quality from 0 to 1 ignoring NA values.
US Fish and Wildlife Service. (1980). Habitat as a basis for environmental assessment. Ecological Services Manual, 101.
US Fish and Wildlife Service. (1980). Habitat Evaluation Procedures (HEP). Ecological Services Manual, 102.
US Fish and Wildlife Service. (1981). Standards for the Development of Habitat Suitability Index Models. Ecological Services Manual, 103.
#Determine patch quality based on a vector of four suitability indices. HSImin(c(0.1, 0.25, 0.25, 0.25)) #Determine patch quality based on a vector of suitability indices with an NA. HSImin(c(0.1, 0.25, NA, 0.25)) #Demonstrate error message associated with out of range outcomes. HSImin(c(2, 4, NA, 3))
#Determine patch quality based on a vector of four suitability indices. HSImin(c(0.1, 0.25, 0.25, 0.25)) #Determine patch quality based on a vector of suitability indices with an NA. HSImin(c(0.1, 0.25, NA, 0.25)) #Demonstrate error message associated with out of range outcomes. HSImin(c(2, 4, NA, 3))
This list of data frames contains 351 U.S. Fish and Wildlife Service Habitat suitability index (HSI) models. Please note that some of the original HSI documents provide little reference data for constructing suitability curves; hence, some suitability curves are estimated using the authors' best judgement. Users should always cross-reference results with the original documentation.
HSImodels
HSImodels
An object of class list
of length 351.
@format A list with 351 data frames each containing an HSI model with multiple independent variables and associated habitat suitability indices (a 0 to 1 value). Data represent break points in curves with linear extrapolation between. Categorical input variables are coded as letters.
independent variable for assessing habitat suitability
suitability index value relative to variable1
additional variables and suitability indices
HSIplotter
plots all suitability curves.
HSIplotter(SI, figure.name)
HSIplotter(SI, figure.name)
SI |
matrix of suitability curves ordered as parameter breakpoints and associated suitability indices for each parameter with appropriate column names. |
figure.name |
output figure file name structured as "filename.jpeg". |
A multi-panel *.jpeg figure showing all suitability curves.
US Fish and Wildlife Service. (1980). Habitat as a basis for environmental assessment. Ecological Services Manual, 101.
US Fish and Wildlife Service. (1980). Habitat Evaluation Procedures (HEP). Ecological Services Manual, 102.
US Fish and Wildlife Service. (1981). Standards for the Development of Habitat Suitability Index Models. Ecological Services Manual, 103.
#Build and define a matrix of the Barred Owl suitability curves #Allen A.W. 1982. Habitat Suitability Index Models: Barred owl. FWS/OBS 82/10.143. #U.S. Fish and Wildlife Service. https://pubs.er.usgs.gov/publication/fwsobs82_10_143. var1 <- cbind(c(0,2,4,NA), c(0.1,1,1,NA)) #Number of trees > 51cm diameter per 0.4 ha plot var2 <- cbind(c(0,5,20,NA), c(0,0,1,NA)) #Mean diameter of overstory trees var3 <- cbind(c(0,20,60,100), c(0,0,1,1)) #Percent canopy cover of overstory trees barredowl <- cbind(var1, var2, var3) colnames(barredowl)<- c("tree.num", "tree.num.SIV", "avg.dbh.in", "avg.dbh.SIV", "can.cov", "can.cov.SIV") #Create suitability curve summary plot HSIplotter(barredowl, tempfile("BarredOwl",fileext=".jpeg"))
#Build and define a matrix of the Barred Owl suitability curves #Allen A.W. 1982. Habitat Suitability Index Models: Barred owl. FWS/OBS 82/10.143. #U.S. Fish and Wildlife Service. https://pubs.er.usgs.gov/publication/fwsobs82_10_143. var1 <- cbind(c(0,2,4,NA), c(0.1,1,1,NA)) #Number of trees > 51cm diameter per 0.4 ha plot var2 <- cbind(c(0,5,20,NA), c(0,0,1,NA)) #Mean diameter of overstory trees var3 <- cbind(c(0,20,60,100), c(0,0,1,1)) #Percent canopy cover of overstory trees barredowl <- cbind(var1, var2, var3) colnames(barredowl)<- c("tree.num", "tree.num.SIV", "avg.dbh.in", "avg.dbh.SIV", "can.cov", "can.cov.SIV") #Create suitability curve summary plot HSIplotter(barredowl, tempfile("BarredOwl",fileext=".jpeg"))
HSIwarimean
uses a weighted arithmetic mean to combine suitability
indices into an overarching habitat suitability index.
HSIwarimean(x, w)
HSIwarimean(x, w)
x |
is a vector of suitability indices. |
w |
is a vector of weights (0 to 1 values that must sum to one). |
A value of habitat quality from 0 to 1 ignoring NA values.
US Fish and Wildlife Service. (1980). Habitat as a basis for environmental assessment. Ecological Services Manual, 101.
US Fish and Wildlife Service. (1980). Habitat Evaluation Procedures (HEP). Ecological Services Manual, 102.
US Fish and Wildlife Service. (1981). Standards for the Development of Habitat Suitability Index Models. Ecological Services Manual, 103.
#Determine patch quality based on a vector of four, equal-weight suitability indices. HSIwarimean(c(1, 0, 0, 0), c(0.25, 0.25, 0.25, 0.25)) #Determine patch quality based on a vector of four, unequal-weight suitability indices. HSIwarimean(c(1, 0, 0, 0), c(1, 0, 0, 0)) #Determine patch quality based on a vector of four, unequal-weight suitability indices. HSIwarimean(c(1, 0, 0, 0), c(0, 1, 0, 0)) #Demonstrate error for mismataching inputs. HSIwarimean(c(1, 0, 0, 0), c(0, 0, 0)) #Demonstrate error for incorrect weighting. HSIwarimean(c(1, 0, 0, 0), c(1, 1, 0, 0)) #Demonstrate error for out of range output. HSIwarimean(c(1, 1, 1, 10), c(0.2, 0.3, 0.3, 0.2))
#Determine patch quality based on a vector of four, equal-weight suitability indices. HSIwarimean(c(1, 0, 0, 0), c(0.25, 0.25, 0.25, 0.25)) #Determine patch quality based on a vector of four, unequal-weight suitability indices. HSIwarimean(c(1, 0, 0, 0), c(1, 0, 0, 0)) #Determine patch quality based on a vector of four, unequal-weight suitability indices. HSIwarimean(c(1, 0, 0, 0), c(0, 1, 0, 0)) #Demonstrate error for mismataching inputs. HSIwarimean(c(1, 0, 0, 0), c(0, 0, 0)) #Demonstrate error for incorrect weighting. HSIwarimean(c(1, 0, 0, 0), c(1, 1, 0, 0)) #Demonstrate error for out of range output. HSIwarimean(c(1, 1, 1, 10), c(0.2, 0.3, 0.3, 0.2))
HUcalc
computes habitat units given a set of suitability indices,
a habitat suitability index equation, and habitat quantity.
HUcalc(SI.out, habitat.quantity, HSIfunc, ...)
HUcalc(SI.out, habitat.quantity, HSIfunc, ...)
SI.out |
is a vector of application-specific suitability indices, which can be produced from SIcalc. |
habitat.quantity |
is a numeric of habitat size associated with these suitability indices (i.e., length, area, or volume). |
HSIfunc |
is a function for combination of the suitability indices. |
... |
optional arguments to HSIfunc. |
A vector of habitat quality, habitat quantity, and index units (quantity times quality).
US Fish and Wildlife Service. (1980). Habitat as a basis for environmental assessment. Ecological Services Manual, 101.
US Fish and Wildlife Service. (1980). Habitat Evaluation Procedures (HEP). Ecological Services Manual, 102.
US Fish and Wildlife Service. (1981). Standards for the Development of Habitat Suitability Index Models. Ecological Services Manual, 103.
#Summarize habitat outcomes based on a vector of two suitability indices #using multiple combination equations. HUcalc(c(0.1,1), 100, HSIarimean) HUcalc(c(0.1,1), 100, HSIgeomean) HUcalc(c(0.1,1), 100, HSImin) HUcalc(c(0.1,1), 100, HSIwarimean, c(1,0)) HUcalc(c(0.1,1), 100, HSIwarimean, c(0,1)) #HSIfunc can also represent functions outside of the ecorest package HUcalc(c(0.1,1), 100, mean) HUcalc(c(0.1,1), 100, max)
#Summarize habitat outcomes based on a vector of two suitability indices #using multiple combination equations. HUcalc(c(0.1,1), 100, HSIarimean) HUcalc(c(0.1,1), 100, HSIgeomean) HUcalc(c(0.1,1), 100, HSImin) HUcalc(c(0.1,1), 100, HSIwarimean, c(1,0)) HUcalc(c(0.1,1), 100, HSIwarimean, c(0,1)) #HSIfunc can also represent functions outside of the ecorest package HUcalc(c(0.1,1), 100, mean) HUcalc(c(0.1,1), 100, max)
SIcalc
computes suitability indices given a set of suitability curves
and project-specific inputs. Suitability indices may be computed based on
either linear interpolation (for continuous variables)
or a lookup method (for categorical variables).
SIcalc(SI, input.proj)
SIcalc(SI, input.proj)
SI |
matrix of suitability curves ordered as parameter breakpoints and associated suitability indices for each parameter. Note that users should enter NA for excluded variables in HSImodels. |
input.proj |
numeric or categorical vector of application-specific input parameters associated with the suitability curve data from SI. |
A vector of the suitability index values that match given user inputs. Values are returned as equal to the extreme of a range if inputs are outside of model range.
US Fish and Wildlife Service. (1980). Habitat as a basis for environmental assessment. Ecological Services Manual, 101.
US Fish and Wildlife Service. (1980). Habitat Evaluation Procedures (HEP). Ecological Services Manual, 102.
US Fish and Wildlife Service. (1981). Standards for the Development of Habitat Suitability Index Models. Ecological Services Manual, 103.
#Build and define a matrix of the Barred Owl suitability curves #Allen A.W. 1982. Habitat Suitability Index Models: Barred owl. FWS/OBS 82/10.143. #U.S. Fish and Wildlife Service. https://pubs.er.usgs.gov/publication/fwsobs82_10_143. var1 <- cbind(c(0,2,4,NA), c(0.1,1,1,NA)) #Number of trees > 51cm diameter per 0.4 ha plot var2 <- cbind(c(0,5,20,NA), c(0,0,1,NA)) #Mean diameter of overstory trees var3 <- cbind(c(0,20,60,100), c(0,0,1,1)) #Percent canopy cover of overstory trees barredowl <- cbind(var1, var2, var3) colnames(barredowl)<- c("tree.num", "tree.num.SIV", "avg.dbh.in", "avg.dbh.SIV", "can.cov", "can.cov.SIV") #Set user input variables that should return (1, 0, 0) input.demo1 <- c(2, 5, 20) SIcalc(barredowl, input.demo1) #Set user input variables that should return (1, 1, 1) input.demo2 <- c(4, 20, 60) SIcalc(barredowl, input.demo2) #Set user input variables that should return (1, 1, 0.5) input.demo3 <- c(4, 20, 40) SIcalc(barredowl, input.demo3) #Set user input variables that should return (0.1, 0.5, 0.5) input.demo4 <- c(0, 12.5, 40) SIcalc(barredowl, input.demo4) #Set user input variables that should return (1, 1, 1) input.demo5 <- c(4, 40, 60) SIcalc(barredowl, input.demo5) #Set user input variables that should return (1, NA, 1) input.demo6 <- c(4, NA, 60) SIcalc(barredowl, input.demo6) #Suitability curves may also be drawn from HSImodels (data within ecorest) #Import Barred Owl suitability curves with HSImodels$barredowl #The input examples are repeated from above #Set user input variables that should return (1, 0, 0) SIcalc(HSImodels$barredowl, input.demo1) #Set user input variables that should return (1, 1, 1) SIcalc(HSImodels$barredowl, input.demo2) #Set user input variables that should return (1, 1, 0.5) SIcalc(HSImodels$barredowl, input.demo3) #Set user input variables that should return (0.1, 0.5, 0.5) SIcalc(HSImodels$barredowl, input.demo4) #Set user input variables that should return (1, 1, 1) SIcalc(HSImodels$barredowl, input.demo5) #Set user input variables that should return (1, NA, 1) SIcalc(HSImodels$barredowl, input.demo6)
#Build and define a matrix of the Barred Owl suitability curves #Allen A.W. 1982. Habitat Suitability Index Models: Barred owl. FWS/OBS 82/10.143. #U.S. Fish and Wildlife Service. https://pubs.er.usgs.gov/publication/fwsobs82_10_143. var1 <- cbind(c(0,2,4,NA), c(0.1,1,1,NA)) #Number of trees > 51cm diameter per 0.4 ha plot var2 <- cbind(c(0,5,20,NA), c(0,0,1,NA)) #Mean diameter of overstory trees var3 <- cbind(c(0,20,60,100), c(0,0,1,1)) #Percent canopy cover of overstory trees barredowl <- cbind(var1, var2, var3) colnames(barredowl)<- c("tree.num", "tree.num.SIV", "avg.dbh.in", "avg.dbh.SIV", "can.cov", "can.cov.SIV") #Set user input variables that should return (1, 0, 0) input.demo1 <- c(2, 5, 20) SIcalc(barredowl, input.demo1) #Set user input variables that should return (1, 1, 1) input.demo2 <- c(4, 20, 60) SIcalc(barredowl, input.demo2) #Set user input variables that should return (1, 1, 0.5) input.demo3 <- c(4, 20, 40) SIcalc(barredowl, input.demo3) #Set user input variables that should return (0.1, 0.5, 0.5) input.demo4 <- c(0, 12.5, 40) SIcalc(barredowl, input.demo4) #Set user input variables that should return (1, 1, 1) input.demo5 <- c(4, 40, 60) SIcalc(barredowl, input.demo5) #Set user input variables that should return (1, NA, 1) input.demo6 <- c(4, NA, 60) SIcalc(barredowl, input.demo6) #Suitability curves may also be drawn from HSImodels (data within ecorest) #Import Barred Owl suitability curves with HSImodels$barredowl #The input examples are repeated from above #Set user input variables that should return (1, 0, 0) SIcalc(HSImodels$barredowl, input.demo1) #Set user input variables that should return (1, 1, 1) SIcalc(HSImodels$barredowl, input.demo2) #Set user input variables that should return (1, 1, 0.5) SIcalc(HSImodels$barredowl, input.demo3) #Set user input variables that should return (0.1, 0.5, 0.5) SIcalc(HSImodels$barredowl, input.demo4) #Set user input variables that should return (1, 1, 1) SIcalc(HSImodels$barredowl, input.demo5) #Set user input variables that should return (1, NA, 1) SIcalc(HSImodels$barredowl, input.demo6)