我正在使用adehabitatHR估算企鹅的家庭范围。当然,他们不能在陆地上游泳,我一直试图在海岸线附近增加边界,以防止KUD增加更多的区域。
我正试图创建边界的区域是澳大利亚菲利普港湾的北端。我按顺序的当前(非常粗糙)边界点是:
-37.9967038 145.0346375
-37.8607599 144.9783325
-37.8341917 144.9131012
-37.8580493 144.8375702
-37.9988682 144.6487427
虽然它被接受为障碍,并且可以在地图上绘制,但当我尝试将其作为KUD中的边界实施时,我不断收到错误:
'3 * h中的错误:二元运算符'
的非数字参数有谁知道这意味着什么以及如何解决它?
谢谢!
答案 0 :(得分:0)
确保您在执行这些步骤之前输入KUD作为边界。
bnd <- structure(list(x = c(-37.9967038, -37.8607599, -37.8341917,
-37.8580493, -37.9988682),
y = c(145.0346375, 144.9783325, 144.9131012,
144.8375702, 144.6487427)),
.Names = c("x", "y"))
bnd <- do.call("cbind", bnd)
Slo <- Line(bnd)
Sli <- Lines(list(Slo), ID = "Frontiers")
barrier <- SpatialLines(list(Sli))
因此,对象barrier
是您的边界,因此您需要在kud函数中指定它:
kernelUD("your spatial data", h = "your bandwidth", grid = "your grid",
boundary = barrier)
一切顺利,