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

在R语言中将含单几何列的CSV文件转为SHP空间数据的方法

R语言直接转换含WKT几何列的CSV为空间数据的方法

使用sf包的内置功能可以直接识别WKT格式的几何列,不需要手动拆分坐标,操作步骤如下:

1. 安装并加载依赖包

# 首次使用先安装
install.packages("sf")
# 加载包
library(sf)

2. 直接转换数据

你给出的示例数据可以直接用st_as_sf()函数转换,只需要通过wkt参数指定几何列的列名,同时设置对应坐标系即可:

# 你的示例数据
name <- c("A", "B", "C")
geom <- c("POINT (45.095914704767 -93.266719775361)",
          "POINT (45.095220489232 -93.254896591796)",
          "POINT (45.079643666 -93.257941333)")
dat <- data.frame(name, geom)

# 转换为sf空间对象,这里示例坐标系为WGS84(EPSG:4326),可根据你的实际数据修改
dat_sf <- st_as_sf(dat, wkt = "geom", crs = 4326)

# 查看转换结果
dat_sf

3. 导出为空间数据文件

转换完成后可以直接导出为shp、GPKG等常见空间格式:

# 导出为GPKG格式(推荐,无编码、字段长度限制问题)
st_write(dat_sf, "output/point_data.gpkg")

# 导出为shp格式
st_write(dat_sf, "output/point_data.shp")

补充说明

  • 该方法通用所有标准WKT格式的几何,包括线、面等类型,无需调整转换逻辑
  • 如果不知道数据对应的坐标系,可以后续通过st_crs()函数再补充设置

内容的提问来源于stack exchange,提问作者Adrienne

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 04:45:07