【发布时间】:2014-07-18 00:07:26
【问题描述】:
这几天一直在为此苦苦挣扎。我在这里使用我的数据的一个子集,3 个人,每人 7 次搬迁,跟踪 3 个季节。并非所有的鱼都存在于所有季节,并且它们的位置因季节而异。我需要估计每个季节鱼类的平均栖息地面积并绘制它。
我认为 Anthony Fischbach 在下面的帖子中的回复是我需要做的,我只是中途停留(主要是因为我对空间分析和 adehabitatHR 非常陌生)。
http://r-sig-geo.2731867.n2.nabble.com/averaging-home-range-contours-td7499301.html#a7503972
df <- structure(list(Season = structure(c(2L, 2L, 2L, 2L, 2L, 2L, 2L,
3L, 3L, 3L, 3L, 3L, 3L, 3L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L,
2L, 2L, 2L), .Label = c("Spring", "Summer", "Fall"), class = "factor"),
Easting = c(425952.746437786, 425930.124103401, 425904.838430173,
425897.396103185, 425859.77203381, 425769.155466566, 425698.934422453,
425172.162553713, 425201.54784946, 425265.188960297, 425293.907156855,
425334.519543017, 425351.98115297, 425341.657291998, 426499.521534761,
426491.617459401, 426489.21804795, 426458.425998741, 426444.572705444,
426435.13014907, 426428.521796826, 425206.363932968, 425214.055516556,
425214.686198032, 425219.462846981, 425224.610973811, 425225.509004604,
425231.130704745, 425295.438309455, 425295.033258023, 425298.385156621,
425286.605300153, 425292.736058183, 425296.563442322, 425289.068691518,
425262.047903812, 425245.264536305, 425236.068286685, 425246.961026478,
425244.291558159, 425234.858476333, 425220.329721481), Northing = c(5630038.14127036,
5630042.68938361, 5630053.17010795, 5630050.05067675, 5630050.03021924,
5630044.42581987, 5630080.68394433, 5631660.65042482, 5631622.41326505,
5631580.90371775, 5631564.80939618, 5631533.30748204, 5631498.46768363,
5631476.0382073, 5629521.34564057, 5629530.46592294, 5629545.1806574,
5629555.1802463, 5629557.15541335, 5629572.08088964, 5629598.08820948,
5630913.54144105, 5630904.64457731, 5630904.41307655, 5630898.56103167,
5630889.14462961, 5630887.90831366, 5630886.93779994, 5630645.78035996,
5630647.00958702, 5630649.85318956, 5630643.90518234, 5630648.93328633,
5630650.5466496, 5630648.65226268, 5631661.36063509, 5631635.46509059,
5631632.70549606, 5631635.88559859, 5631631.47516021, 5631626.93945528,
5631610.91014489), ID = structure(c(1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L,
3L, 3L, 3L, 3L, 3L, 3L), .Label = c("01", "04", "06"), class = "factor")), .Names =
c("Season",
"Easting", "Northing", "ID"), row.names = c(NA, 42L), class = "data.frame")
## following the advice in the link above:
library(adehabitatHR)
tagList <- unique(df$ID)
kud1 <- list()
kud_spdf <- list()
vd <- list()
## running a loop across animals, estimating 95%
for(i in tagList){
thing <- SpatialPoints(subset(df[df$ID == i,], select = c(Easting, Northing)),
proj4string = CRS("+proj=utm +zone=11 +ellps=WGS84"))
thing <- SpatialPointsDataFrame(coords = thing, data = subset(df[df$ID == i,], select = c(Season)))
thing$Season <- as.character(thing$Season)
kud1[[i]] <- kernelUD(thing, grid = 120, extent = 0.2, same4all=TRUE)
kud_spdf[[i]] <- estUDm2spixdf(kud1[[i]])
fullgrid(kud_spdf[[i]]) <- TRUE
vd[[i]] <- kud_spdf[[i]]@data
}
然后我被卡住了,因为 vd 中的每条鱼都有不同数量的点(因为据我了解,网格是为每条鱼单独计算的)。如何继续对鱼进行平均、按像素求和和标准化数据等?
我对绘图部分没问题,只要我可以在 kernelUD 对象上使用getverticeshr,然后运行fortify,并使用 ggmap 和 ggplot 逐组绘图。
任何帮助将不胜感激......
【问题讨论】:
标签: r