我知道,之前也有类似的问题("'Calloc 'could not allocate memory" in 64-bit R),我试着在那里问,但我被删除了……虽然正如我在问题中所说,我确实尝试了他们的解决方案(更新插件),但它对我不起作用。所以,让我再试一次:)
当我尝试使用adehabitatHR包中的kernelUD()函数时,根据h参数值的不同,我得到了该错误。它使用h="href"参数,但不使用h="LSCV" (不同的平滑参数)
require(adehabitatHR)
BCLoc <- puechabonsp$relocs[, 1] #data comes with adehabitatHR
BC.href <- kernelUD(BCLoc, h="href") #works :)
BC.LSCV <- kernelUD(BCLoc, h="LSCV") #gets error :(Error in .kernelUDs(SpatialPoints(x, proj4string = CRS(as.character(pfs1))), :
'Calloc' could not allocate memory (18446744071710095360 of 8 bytes)有什么想法吗?
发布于 2020-04-22 02:10:17
我也有同样的问题。据我所知,如果重新定位的数量太大,LSCV似乎表现得很差(或者只是失败得可怜) (Hemson et al 2005 Journal of Animal Ecology 2005 )。74,455-463)。我的代码很大,一开始当我试图用hLSCV运行KDE时,R会话中止了,尽管所有的ref都运行得很好。
当我减少样本时,我得到了你所问的错误。进一步减少它,我开始得到一个新的错误:
In .kernelUDs(SpatialPoints(x, proj4string = CRS(as.character(pfs1))), :
The algorithm did not converge within the specified range of hlim:
try to increase it不管我把他定得多高,它都不会收敛。一种可能的解决方案是使用函数"jitter“向重定位添加噪声,如下所示:https://ecosystems.psu.edu/research/labs/walter-lab/manual/home-range-estimation/link-to-pdf和https://animov.faunalia.narkive.com/NnG9nLKl/again-kernelud-and-lscv
虽然它对我不起作用,但我希望这对任何人都有帮助
https://stackoverflow.com/questions/54793150
复制相似问题