О моем вопросе ГИС в R (от readShapePoly до sf :: st_read) - PullRequest
0 голосов
/ 17 июня 2019

Мне нужно использовать команду sf package, потому что readShapePoly commnad будет удален. Это будущее, которое я знаю ... Так что я хочу изменить свой код с маршрута это readShapePloy для маршрутизации sf :: st_read. Но я не могу написать правильный код. Поэтому я хочу исправить код, и я очень рад, если вы покажете правильную команду sf package. Моя текущая команда ниже, спасибо ... (прошу прощения за плохое владение английским языком, пожалуйста, перейди ...)

В R я снова и снова писал код для ex, по команде sf :: st_read. Но это снова и снова показывает ошибку ... код ниже и сообщение об ошибке ниже тоже

usa_state <- readShapePoly("usa_state.shp", IDvar = "STATE_CODE")

Это нормально, но я знаю, чтобы изменить этот код в будущем, потому что эта команда удалена в будущем. Поэтому, пожалуйста, покажите мне команду, что это маршрут пакета sf. Я попробовал приведенный ниже код, но я знаю, что это не понятно в R.

usa_state = sf::st_read("usa_state.shp", layer = "STATE_CODE")

плохой код ... Пожалуйста, верните правильное кодирование! Произошла ошибка.

Error in CPL_read_ogr(dsn, layer, query, as.character(options), quiet,  : 
  SQL execution failed, cannot open layer.
In addition: Warning message:
In CPL_read_ogr(dsn, layer, query, as.character(options), quiet,  :
  GDAL Error 1: SQL Expression Parsing Error: syntax error, unexpected 
identifier, expecting SELECT or '('. Occurred around : "STATE_CODE"

1 Ответ

0 голосов
/ 25 июня 2019

Ты почти там с usa_state = sf::st_read("usa_state.shp", layer = "STATE_CODE").

Я предполагаю, что STATE_CODE - это поле в шейп-файле usa_state.shp. Вам не нужно указывать имена полей для функции st_read(). Просто используйте:

library(sf)
usa_state = st_read("usa_state.shp")

Вам нужно убедиться, что файл usa_state.shp (и связанные с ним файлы) находятся в вашем текущем рабочем каталоге, или вам нужно использовать полный путь:

usa_state = st_read("/path/to/usa_state.shp")

Пакет sf стоит того, чтобы с ним познакомиться. Это сделало всю мою пространственную работу в R намного проще.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...