R语言alphahull包调用ahull_track报错找不到psp函数如何解决
错误原因
psp 是空间数据处理类函数,属于 spatstat 工具包生态,当前版本已拆分到 spatstat.geom 子包中。ahull_track 源码未显式声明该依赖,所以运行时会触发函数找不到的报错。
修复步骤
- 第一步:安装缺失依赖
可选择安装完整生态避免后续其他依赖缺失,也可只安装最小必要子包:
# 方案1:安装完整spatstat生态(推荐) install.packages("spatstat") # 方案2:仅安装包含psp函数的最小子包 # install.packages("spatstat.geom")
- 第二步:调用
ahull_track前加载依赖,两种可选方式:- 方式1:直接加载包,后续调用无需额外修改
# 对应上面的安装方案1 library(spatstat) # 对应上面的安装方案2 # library(spatstat.geom)- 方式2:不想全局加载包的话,可直接修改
ahull_track源码,将第8行的psp(...)调用加上命名空间前缀:
spatstat.geom::psp(dat[-np, 1], dat[-np, 2], dat[-1, 1], dat[-1, 2], window = owin(range(dat[,1]),range(dat[,2])))
补充说明:如果后续运行时还遇到
owin函数找不到的报错,也是同一依赖缺失导致,按上述方案处理即可。
内容的提问来源于stack exchange,提问作者Laurent
相关产品推荐
相关产品推荐

