BIOMOD_FormatingData概述
这个函数用于汇集、整理所有需要输入的数据包括训练集(Calculation+Validation)的正样本、负样本、解释变量等,也可以包括验证集(Evaluation)的正样本、负样本、解释变量等。能够控制伪负样本的选取策略、选取数量和重复选取次数等。对参数命名的解析:
resp指response,即响应变量,也就是物种的正、负样本数据,以下统称物种数据;
expl指explanatory,即解释变量,也就是影响物种分布的环境变量,以下统称环境变量;
eval指evaluation,即验证数据;
PA指pseudo-absence,即伪缺席,称伪负样本。
样例
BIOMOD_FormatingData(
resp.name,
resp.var,
expl.var,
dir.name = “.”,
resp.xy = NULL,
eval.resp.var = NULL,
eval.expl.var = NULL,
eval.resp.xy = NULL,
PA.nb.rep = 0,
PA.nb.absences = 1000,
PA.strategy = NULL,
PA.dist.min = 0,
PA.dist.max = NULL,
PA.sre.quant = 0.025,
PA.user.table = NULL,
na.rm = TRUE,
filter.raster = FALSE)
参数概述:
resp.name:该参数用于传递物种名称;
resp.var:该参数用于传递物种数据。如果物种数据仅包含正样本(Presence),以无关联数据(associated data)的向量(vector)或空间向量(SpatVector)格式输入;如果物种数据包含正样本(1:Presence)、负样本(0:bsence)乃至空样本(NA:indeterminate),以关联二值数据的空间向量(SpatVector)格式输入。在老版本中,前者以空间点(Spatial Points)格式输入,后者以空间数据集(SpatialPointsDataFrame)格式输入;
expl.var:该参数用于传递环境变量,以矩阵(matrix)数据集(data.frame)空间向量(SpatVector)或者空间栅格(SpatRaster)格式输入。在旧版本中,环境变量以栅格堆栈(RasterStack)或者空间数据集(SpatialPointsDataFrame)格式输入;
dir.name:该参数用于传递存放模型的文件夹名称,保持默认即可;
resp.xy:该参数用于传递物种数据的坐标信息;
eval.resp.var:该参数用于传递验证数据集中的物种数据;
eval.expl.var:该参数用于传递验证数据集中的环境变量;
eval.resp.xy:该参数用于传递验证数据集中的物种数据坐标信息;
PA.nb.rep:该参数用于控制伪负样本的重复选取次数;
PA.nb.absences:该参数用于控制伪负样本的选取数量;
PA.strategy:该参数用于控制伪负样本的选取策略,包括random、sre、disk或者用户自定义(user.defined);
PA.dist.min:该参数控制伪负样本到正样本的最小距离(如果伪负样本策略为disk);PA.dist.max:该参数控制伪负样本到正样本的最大距离(如果伪负样本策略为disk);PA.sre.quant:该参数控制选择伪负样本的半分位数(half-quantile)(如果伪负样本策略为sre);
PA.user.table:该参数用于传递用户自定义的伪负样本,以矩阵(matrix)或数据集(data frame)格式输入。行数控制伪负样本数量,列数控制伪负样本参与建模的运行次数。na.rm:该参数用于控制是否在分析中移除包含有环境变量缺失值的点,如是否移除位于青藏高原冰川、湖泊上的点;
filter.raster:该参数用于控制是否过滤位于同一栅格的物种数据点(如果环境变量输入格式为栅格)。
参数详解
相应变量/物种数据:以空间数据集或空间向量(SpatialPointsDataFrame or SpatVector object)格式输入时,可包含1、0、NA值,其中NA指空值,或称未知点,可用于选择伪负样本。如果要选择伪负样本,必须提供未知点。
解释变量:可以输入因子变量(Factorial variables),但可能会导致一些伪缺失策略或模型被遗漏,如SRE。
验证数据:BIOMOD2提供了工具将数据集划分为计算集(Calibration)和确认集(Validation),在函数BIOMOD_Modeling中,通过设置CV验证相关参数能够实现。更建议提前分出两个数据集,一个用作训练(calibration/validation),另一个作为验证集(Evaluation)。
伪负样本选择:如果没有负样本,那么必须从背景数据中选取伪样本。伪负样本有两种来源,可以从环境变量中选取(如果环境变量是以空间栅格(SpatRaster)或栅格堆栈(RasterStack)格式输入;也可以从物种数据的NA数据中选取)。
伪负样本的四种选取策略:
Random:将所有的背景数据都作为伪负样本的选取范围。
SRE:在与正样本环境条件(环境变量的组合——combination of explanatory variable)不同的区域选择伪负样本,需要人为设置其阈值(PA.sre.quant)。首先会对正样本运行表面包络模型,在包络之外选取伪负样本。这一策略适用于某个物种所有生态位的充分采样,否则会导致过于乐观的模型评估和预测。
DISK:在正样本周围的圆圈内选择伪缺席,设置最小距离以避免相同的生态位和伪复制(avoid same niche and pseudo-replication),设置最大距离保证局部采样原则(localized sampling strategy)。
user.defined:通过PA.user.table参数,以data.frame的形式对负样本进行预定义。