2017-03-03 46 views
0

我一直在使用R软件包adehabitatHR查找一些企鹅的内核密度等值线,并且一切正常。但是,当我使用mcp或kernel.area查找50%和95%轮廓内的区域时,我得到的估计值非常低。这些鸟类正在旅行30-80公里,但面积估计将回升至3.087401 x 10^-7ha。以前的数据显示面积估计为4000-6000ha。 有谁知道可能会发生什么? 谢谢!查找内核密度区域

#please ignore all the libraries, I'm new to R and keep them all up 
    library(adehabitatHR) 
    library(sp) 
    library(rgdal) 
    library(raster)   
    F14A <- read_csv("74F314A f.csv") 
    str(F14A) 
    loc <- F14A[, c("Latitude", "Longitude")] 
    str(loc) 
    # Change Lat & Long to spatial points 
    loc <- as.matrix.data.frame(loc) 
    loc <- SpatialPoints(loc) 
    ## Estimation of KUD 
    ud <- kernelUD(loc, h = "href", grid = 100, same4all = FALSE, 
      kern = c("bivnorm"), extent = 1) 
    mcp(loc, percent=100) 
    mcp.area(loc,percent=seq(50,95, by=5), unin = c("m"), 
     unout = c("ha")) 

回答

0

我会好奇你的内核带宽。如果你正在使用一个函数来为你计算带宽,那么它可能会发生的任何优化都会陷入一个非常有用的值(这发生在我身上) - 太小的内核带宽将导致远远的核密度面积太小。

如果您正在使用的函数有contour()的实现,我会倾向于plot(contour(ud))来查看它是否看起来像一个很好的等值线图(如果不是!)如果不是,请尝试将内核带宽设置为某些不同的值来看结果如何表现。

这看起来像是一个博学的观点,但带宽选择是涉及内核密度的任何分析的关键和非平凡部分。不幸的是,有些时候黑盒软件不会像您(主题专家)那样选择作为研究适合的带宽。

0

等高线图看起来很好,它们很适合地图,并且跟踪了我所拥有的曲目。该地图是一个shape文件,它也内置了GPS坐标。

问题是我的观点没有正确转变。对于有同样问题的其他人,我使用下面的代码将其转换为UTM区域55,然后kernel.area函数完美工作。

longlatcoor<-SpatialPoints(cbind(F14A$Longitude,F14A$Latitude), proj4string=CRS("+proj=longlat +datum=WGS84")) 
    # converting 
    utmcoord<-spTransform(longlatcoor,CRS("+proj=utm +south +zone=55 +datum=WGS84")) 
    utmcoord #just to double check the transformation has occured 
    kud<-kernelUD(utmcoord, h="href", grid=100, hlim = c(0.1, 1.5), kern = c("bivnorm"), extent = 0.5,boundary=barrier) 
    image(kud) 
    kernel.area(kud,percent=seq(50,95,by=5),unin=("m"),unout=("ha")) 

这产生GPS值就像纬度319187.6长5807109,和公顷最终内核领域是:50%= 1153.162,95%= 7025.186,这更接近我所期待的。