跳到内容

giopogg/网络SDM

存储库文件导航

R包“webSDM”

乔瓦尼·波吉亚托18/09/23

webSDM-包括SDM中已知的营养相互作用

webSDM实现了Poggiato等人所述的营养SDM模型。,“在物种分布模型中整合营养食物网提高了生态位估算与预测”。Trophic SDM集成SDM中已知的营养相互作用网络,从而提供更真实的以及生态上合理的预测。我们在这里演示一下介绍包的一些功能,但我们参考vignette和帮助功能,用于更完整的文档我们的包裹。

“webSDM”地图

安装R包

#运行以安装webSDM
#install.packages('webSDM',repos=“http://cran.us.r-project.org")
开发工具::安装github("giopogg/网络SDM")图书馆(网络SDM)图书馆(ggplot2)图书馆(圣塔那主义)

使营养SDM适合数据

拟合营养SDM需要物种分布数据环境协变量和已知的营养相互作用网络。
我们加载一个模拟数据集,其中Y包含物种分布数据(地点x物种矩阵),x环境协变量(地点x协变量矩阵),G是记录仪对象描述交互网络(具有从捕食者到猎物的链接)。我们为每个物种指定一个关于环境,我们拟合了一个假设自底向上控制的模型(即。,食肉动物被建模为猎物的函数)。我们将营养SDM放入贝叶斯框架。

数据(X(X),Y(Y),G公司) =滋养细胞SDM(Y(Y) = Y(Y),X(X) = X(X),G公司 = G公司,env.formula环境 = "~X_1+X_2",家庭 =二项式(链接 = "罗吉特"),模式 = "猎物",方法 = "标准glm")

推断系数

我们可以在参数中看到每个glm的公式$form.all(美元)

$全部表格
##1美元
##[1]“y~X_1+X_2”
##
##Y2美元
##[1]“y~X_1+X_2”
##
##Y3美元
##[1]“y~X_1+X_2”
##
##Y4美元
##[1]“y~X_1+X_2+Y3”
##
##Y5美元
##[1]“y~X_1+X_2+Y1+Y2+Y3”
##
##Y6美元
##[1]“y~X_1+X_2+Y3+Y5”

我们可以使用函数首先查看回归系数情节.

绘图()

我们可以获得回归系数(最终标准化)具有该功能系数.

系数(,使标准化 = T型,水平 = 0.9)##1美元
##估计5%95%
##(截距)0.3436947 0.34369470.3436949
##X_1-0.2021379-0.2610196-0.1437026
##X_2 0.2551022 0.1967936 0.3060621
##
##Y2美元
##估计5%95%
##(截距)-0.26667469-0.2666777-0.26667469
##X_1 0.38623879 0.3185228 0.44548596
##X_2-0.07487371-0.1398988-0.01233344
##
##Y3美元
##估计5%95%
##(截距)-0.6087146-0.6087149-0.6087134
##X_1 0.2691505 0.2040072 0.3264109
##X_2 0.1959559 0.1277228 0.2558819
##
##Y4美元
##估计5%95%
##(截距)0.78313457 0.78313457 0.783134568
##X_1-0.17572121-0.23117578-0.11125286
##X_2-0.01240440-0.07179788 0.044998167
##Y3-0.07121957-0.13386056-0.008400504
##
##Y5美元
##估计5%95%
##(截距)-0.6183171-0.61831706-0.6183171
##X_1 0.2012124 0.13693977 0.2583883
##X_2-0.3040676-0.36413006-0.2482235
##Y1 0.4429577 0.37314154 0.5052524
##粤2-0.0238899-0.0846871 0.0309484
##Y3-0.2091481-0.26014005-0.1566986
##
##Y6美元
##估计5%95%
##(截距)1.32269012 1.32269012 1.32269012
##X_1-0.03325986-0.09097127 0.01820810
##X_2 0.08919394 0.02389159 0.15177465
##豫3-0.24024322-0.30943078-0.17621452
##粤5-0.09973197-0.15640795-0.04450875

我们可以用这个函数可视化生物系数绘图G_inferred

绘图G_inferred()

我们还可以用函数`computeVariableImportance'

VarImpo公司 =计算变量重要性(, = 列表("非生物的" =c(c)("X_1型","X_2型"),"生物的" =c(c)("Y1型","Y2年","Y3年","Y4年","第5页","Y6年")))VarImpo公司 =应用(VarImpo公司,2,功能(x个)x个/(x个[1]+x个[2]))选项卡 = 重塑2::熔化(VarImpo公司)选项卡$变量2 = 因素(选项卡$变量2,水平 =列名(Y(Y)))ggplot图(选项卡,aes(x个 = 变量2, = 价值,填满 = 变量1))+地理工具栏(斯达="身份")+主题_经典()

本地对象

我们可以访问现场的每个本地模型$型号然后选择一个给定局部模型,可以使用一些已实现的方法

$模型$第5页
## ==================================================================
##Y5物种的本地SDMfit无惩罚,使用stan_glm进行拟合
## ==================================================================
##*有用的S3方法
##打印()、系数()、绘图()、预测()
##$model提供了stanreg类对象
## ==================================================================

预言

我们可以用拟合的营养SDM以多种方式进行预测。最多简单的方法是使用函数预测例如,我们可以从物种的后验预测分布中获得50个抽签(pred_samples=50)使用预测的物种存在-缺失预测它们的捕食者(prob.cov=TRUE)。当我们不指定Xnew时,该函数默认设置Xnew=X。因此,我们可以获得合适的模型值和计算拟合优度指标。请注意AIC或loo等其他指标也可用。

伊普雷德 =预测(,完整发布 = 错误的,预先采样(_S) = 50,问题cov = 错误的)#predict返回一个列表,其中包含每个物种在每个站点的预测样本
#但由于我们指定fullPost=FALSE,它只返回预测平均值和分位数
伊普雷德 =do.呼叫(cbind公司,重叠地(伊普雷德,功能(x个)x个$预测.mean))伊普雷德 = 伊普雷德[,列名(Y(Y))]评估模型匹配(,Y新 = Y(Y),Y预测 = 伊普雷德)##auc-tss物种
##1 0.6733574 0.28064516 Y1
##2 0.7048959 0.31015078 Y2
##3 0.6690035 0.27931242 Y3
##4 0.5988342 0.17092061 Y4
##5 0.6236528 0.20786045 Y5
##6 0.5581631 0.09940342 Y6

$log.lik(日志.lik)
## [1] -3638.686
$AIC公司
## [1] 7337.373厕所()## [1] -3650.931

我们还可以使用K折来评估模型预测的质量交叉验证:

个人简历 =营养SDM_CV(,K(K) = ,prob.cov问题 = T型,并行运行 = 错误的)#桌子上的Transfom
伊普雷德 = 个人简历$指Pred
#重新排序列
伊普雷德 = 伊普雷德[,列名(Y(Y))]评估模型匹配(,Y新 = Y(Y),Y预测 = 伊普雷德)

我们现在可以评估物种存在的概率环境条件X_1=0.5和X_2=0.5。

Pred公司 =预测(,X新 = 数据帧(X_1型 = 0.5,X_2型 = 0.5),完整发布 = F类)t(do.call(cbind公司,Pred公司))##预测.平均预测.q025预测.q975
##Y1 0.6275369 0.5919506 0.6673241
##Y2 0.6811964 0.65555955 0.7031938
##Y3 0.7187342 0.6891241 0.7377668元
##Y4 0.4978676 0.4544304 0.5767335元
##Y5 0.3806087 0.0963942 0.7238955元
##Y6 0.6484422 0.4698095 0.8539271元

我们还可以获得对潜在生态位的估计,即在自下而上的方法中,对应于存在的概率指一个物种,因为它有猎物。例如,我们可以计算环境中物种存在的概率条件X_1=0.5和X_2=0.5假设所有猎物存在。

伊普雷德 =预测潜力(,完整发布 = 错误的,预先采样(_S) = 100,X新 = 数据帧(X_1型 = 0.5,X_2型 = 0.5))

惯常做法

请注意,我们还可以在frequentist方法中拟合营养SDM。

 =营养SDM(Y(Y) = Y(Y),X(X) = X(X),G公司 = G公司,env.formula环境 = "~X_1+X_2",家庭 =二项式(链接 = "逻辑学家"),模式 = "猎物",方法 = "glm公司")

上述所有功能也可在频率师中使用框架,必要时进行调整(例如系数是否显著取决于p值而非可信值间隔)。然而,错误传播是不可用的,我们只能对每个物种和地点进行一次预测,而不是多次预测贝叶斯案例中的样本。

惩罚

我们可以通过指定panial=“马蹄铁”如果我们设置方法=“stan_glm”(即在贝叶斯框架中),或crimin=“弹性网”如果我们设置方法=“glm”(即在频率专家框架)。

 =营养SDM(Y(Y) = Y(Y),X(X) = X(X),G公司 = G公司,env.formula环境 = "~X_1+X_2",家庭 =二项式(链接 = "逻辑学家"),模式 = "猎物",方法 = "glm公司",刑法上的 = "弹性网") =营养SDM(Y(Y) = Y(Y),X(X) = X(X),G公司 = G公司,env.formula环境 = "~X_1+X_2",家庭 =二项式(链接 = "罗吉特"),模式 = "猎物",方法 = "标准glm",刑法上的 = "马蹄铁")

复合变量

我们可以使用参数包含复合变量sp.公式sp.分区。我们参考了一个小插曲“复合变量”对这些论点的详尽描述以及如何使用它们来获得任何类型的型号规格。例如,我们可以将物种建模为猎物丰富度的函数。

 =营养SDM(Y(Y) = Y(Y),X(X) = X(X),G公司 = G公司,env.formula环境 = "~X_1+X_2",sp.公式 = "丰富性",家庭 =二项式(链接 = "罗吉特"),模式 = "猎物",方法 = "glm公司")$全部表格
##1美元
##[1]“y~X_1+X_2”
##
##Y2美元
##[1]“y~X_1+X_2”
##
##Y3美元
##[1]“y~X_1+X_2”
##
##Y4美元
##[1]“y~X_1+X_2+I(Y3)”
##
##Y5美元
##[1]“y~X_1+X_2+I(Y1+Y2+Y3)”
##
##Y6美元
##[1]“y~X_1+X_2+I(Y3+Y5)”

作者

该软件包目前由Giovanni Poggiato从阿尔卑斯生态实验室。它由ANR GAMBAS支持此包中实现的框架在以下内容中进行了描述:“集成物种分布模型中的营养食物网改善了生态环境生态位估计和预测“Poggiato Giovanni,Jérémy Andréoletti,劳拉·波洛克(Laura J.Pollock)和威尔弗里德·瑟勒(Wilfried Thuiller)。正在准备中。

关于

对物种的已知营养相互作用网络进行建模和预测

资源

星星

观察者

叉子

包装

未发布包

语言文字