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

运行st_read()入门示例时路径存在仍提示文件不存在报错求助

st_read读取shp文件夹报错解决方案

核心报错原因

sf包的st_read读取shapefile数据集时,若传入文件夹路径,要求该文件夹根目录下直接存在后缀为*.shp、.shx、.dbf的三类核心shapefile文件。你当前的报错大概率是解压后的shp文件没有直接放在./data/County1990ussm/根目录下,存在嵌套层级,或是没有指定到具体的*.shp文件。
你使用的./开头的相对路径写法是标准写法,list.files("./data")已经确认该目录存在目标文件夹,可排除路径前缀错误。

分步解决

  • 第一步:递归打印目标文件夹下的所有文件,确认shp文件的实际位置
# recursive = TRUE会遍历所有子文件夹,输出所有文件路径
print(list.files("./data/County1990ussm/", recursive = TRUE))
  • 第二步:根据输出调整读取路径
    优先直接指定到*.shp文件本身,比传入文件夹路径兼容性更强:
    如果输出显示shp文件路径为County1990ussm.shp,直接修改读取代码为:
County_Aggregate_Data <- st_read("./data/County1990ussm/County1990ussm.shp")

如果输出显示shp文件在子文件夹中,补全对应路径即可。

  • 备用方案:使用绝对路径读取,避免工作目录变动带来的影响
# 自动拼接当前工作目录生成完整绝对路径
full_shp_path <- file.path(getwd(), "data", "County1990ussm", "County1990ussm.shp")
County_Aggregate_Data <- st_read(full_shp_path)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 13:06:03