You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

spatstat包as.owin函数转换SpatialPolygon为owin对象时报错求助

spatstat包as.owin函数转换SpatialPolygon为owin对象时报错求助

大家好,我最近在用sp和spatstat包做空间点模式分析,碰到个麻烦事想请教各位大佬。

我已经把目标shapefile转换成了SpatialPolygon对象(命名为kel_sp),现在想把它转成spatstat里的owin对象来做后续分析,用的代码是这样的:

library(sp)
library(spatstat)
kel_map.owin <- as(kel_sp, "owin")

结果直接报了这个错:

Error in .make_numeric_version(x, strict, .standard_regexps()$valid_numeric_version) :
invalid non-character version specification 'x' (type: double)

之前用旧版本的spatstat的时候这段代码跑起来完全没问题,但我把sp包更新到2.1-4、spatstat更新到3.1-1之后就突然失效了。

我自己也排查了一些方向:

  • 先试着画了kel_sp这个SpatialPolygon对象,边界显示完全正常,说明数据本身应该是没问题的
  • 后来我还试着提取边界,手动创建owin对象,但结果只显示了矩形边界,不是我需要的多边形边界。我的数据CRS是RSO Malaya metres...

有没有大佬碰到过类似的版本兼容问题?或者知道怎么解决这个转换报错的问题吗?

备注:内容来源于stack exchange,提问作者Dr Hazlienor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.16 06:55:26