r语言 - adehabitatHR locoh.k orphan holes



我正在尝试使用AdehabitatHR LoCoH.k.area优化 k 参数,当拓扑无法生成多边形时,它停止运行。 消息是:

rgeos_PolyCreateComment:孤立孔,找不到包含多边形 对于索引 12 处的孔。

我已经使用 LoCoH.k 进行了多次成功的单次运行,只有少数由于孤儿孔而未运行。

是否可以保持LoCoH.k.area循环向量中指定的 k 值,即使前面的 k 值产生孤立孔?

谢谢,珍妮

您不能LoCoH.k.area将函数包装在tryCatch中。 例如,带有krange = 5:9参数的函数抛出:

rgeos::createPolygonsComment(oobj( 中的错误: rgeos_PolyCreateComment:孤立孔,找不到包含多边形 对于分度 6 处的孔

请参阅下面的代码:

library(adehabitatHR)
data(puechabonsp)
locs <- puechabonsp$relocs
## The call below throws an error
## LoCoH.k.area(locs[, 1], krange = 5:9)
pdf()
y <- sapply(5:9, function(x) tryCatch(
expr = cbind(LoCoH.k.area(locs[, 1], krange = x), k = x), 
error = function(e){}, 
finally = NULL))
dev.off()
do.call(rbind, y)

输出:

Brock    Calou     Chou     Jean k
1 25.21552 38.61693 83.37389 80.97771 8
2 27.37161 39.10789 86.45349 83.44156 9

最新更新