Трудность открытия файла данных пакета неизвестного типа - PullRequest
0 голосов
/ 02 мая 2018

Я пытаюсь загрузить карту состояний из пакета карт в объект R. Я надеюсь, что это SpatialPolygonsDataFrame или что-то, что я могу превратить в один после того, как я его проверил. Однако я терплю неудачу на первом шаге - получить его в объекте R. Я не знаю тип файла.

Сначала я попытался назначить вывод map() непосредственно для объекта R:

st_m <- maps::map(database = "state")

рисует карту, но str(st_m), похоже, ничего не делает, если не перерисовывает ту же карту.

Затем я попытался загрузить его как набор данных: st_m <- data("stateMapEnv", package="maps"), но это просто возвращает строку:

> str(stateMapEnv)
 chr "R_MAP_DATA_DIR"

Я открыл каталог карт win-library/3.4/maps/mapdata/ и нашел то, что я считаю файлом карты, «state.L».

Я попытался прочитать его с помощью сканирования и получил сообщение об ошибке, я не понимаю:

scan(file = "D:/Documents/R/win-library/3.4/maps/mapdata/state.L")
Error in scan(file = "D:/Documents/R/win-library/3.4/maps/mapdata/state.L") : 
  scan() expected 'a real', got '#'

Затем я открыл файл с помощью Блокнота ++. Похоже, это двоичный или сжатый файл.

Так что я подумал, что это может быть файл данных R с необычным расширением. Но моя попытка загрузить его вернула ошибку «неверное магическое число»:

st_m <- load("D:/Documents/R/win-library/3.4/maps/mapdata/state.L")
Error in load("D:/Documents/R/win-library/3.4/maps/mapdata/state.L") : 
      bad restore file magic number (file may be corrupted) -- no data loaded

Наблюдая за тем, как эти ответы развивались от бесполезного до непостижимого для оккультизма, я подумал, что лучше всего обратиться за помощью к волшебникам stackoverflow.

1 Ответ

0 голосов
/ 02 мая 2018

Это позволит вам экспортировать данные о состоянии или любом другом наборе карт:

library(ggplot2)
state_dataset <- map_data("state")
...