预测MaxEnt(软件R)的函数

时间:2015-09-30 20:41:36

标签: r maxent

我正在尝试使用预测函数来预测空间转移中的潜在发生点。为此,我使用在原始空间中加载了存在点的dismo包,17个原始空间的栅格图层和17个用于传输空间的栅格图层。所有栅格在范围,网格分辨率和尺寸方面都是相同的,仅在地理坐标系中不同。 原始空间和转移空间位于不同的大陆和 我在训练和测试中使用了kfold技术来分割样品。

我适合我的maxent模型:

me<-maxent(predictor, training)

但是,我不能在转移空间中投射我的拟合模型,返回:

pred<-predict(me,predictor2)
    Erro em .local(object, ...) : missing layers (or wrong names)

*预测变量1和2位于光栅堆栈文件中

*正确选择了所有目录,并将文件找到目录中。

* both,stack包含每个地理空间的相同变量

2 个答案:

答案 0 :(得分:0)

那指的是'错误的名字'。这可以解决这个问题

names(predictor2) <- names(predictor)

但请确保这是正确的(即,两个RasterStack对象具有相同顺序的相同图层),通过检查

names(predictor2)
names(predictor)

答案 1 :(得分:0)

predict的栅格方法指定“ newdata”栅格(对象)是第一个参数,模型是第二个参数。

## S4 method for signature 'Raster'
predict(object, model, filename="", fun=predict, ext=NULL, 
const=NULL, index=1, na.rm=TRUE, inf.rm=FALSE, factors=NULL, 
format, datatype, overwrite=FALSE, progress='', ...)

尝试:

pred<-predict(predictor2, me)