首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AdehabitatHR核重叠器

AdehabitatHR核重叠器
EN

Stack Overflow用户
提问于 2014-12-08 11:16:23
回答 1查看 1.1K关注 0票数 0

希望有人能帮忙。我有一个大的数据集,其中包括100个随机数据为10只动物。到目前为止,我已经通过堆叠每个运行来创建一个EstUD,以获得一个使用过的发行版的总和。我现在想用内核重叠器比较每一种动物的家范围。不幸的是,我得到了错误,在vi * vj :较长的对象长度不是较短对象长度的倍数。我认为这是因为网格并不完全相同。有没有一种方法来转换网格,使它们都是相同的,那么我可以估计重叠吗?代码的第一部分我已经跑了十次了,每只动物一次。我相信这也可以在一个循环中完成,但不确定如何实现。

代码语言:javascript
复制
#Part1: generate 10 estUD's 1 per animal
bat.master <- read.csv("C:/Users/a6915409/Dropbox/Wallington GIS/bat.master")

xybat <- subset(bat.master, bat.master$id == "H1608b",select=x:loopno )

#change to spatial points
xy <- xybat[1:2]#first two rows save as coords
df <- xybat[-1:-3]#remove unneded columns for ud

SPDF <- SpatialPointsDataFrame(coords=xy, data=df)#combine df and xy

udHR <- kernelUD(SPDF, h = "href", same4all = TRUE, kern = "bivnorm") 


## I would proceed using the raster packages
library(raster)
ud <- stack(lapply(udHR, raster))

## take the sum
plot(udm <- sum(ud))

H1608b <- udHR[[1]]
H1608b@grid <- as(udm, "GridTopology")

# Part 2: 
#combine all Ud's into one dataset

liud <- list(Y2889a, Y2889a, Y2850a, Y2850b, H1670a, H1670b, H1659a, H1659b,H1608a, H1608b)
class(liud) <- "estUDm"

image(liud)#plot all est ud's

Over<-kerneloverlaphr(liud, method="UDOI", percent= 90)

错误:在vi * vj中:较长的对象长度不是较短对象长度的倍数

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-10 20:42:53

您需要使用参数kernelUD来估计same4all=T。您将消除与重叠计算有关的问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27356789

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档