R sf: извлечь вложенные объекты geoJSON, вложенные в JSON

У меня есть файл JSON, в который вложены коллекции объектов geoJSON.

Можно ли прочитать в файле JSON с помощью jsonlite::read_json(), извлеките биты geoJSON, а затем преобразуйте полученные list к sf объект? Альтернатива состоит в том, чтобы написать list вернуться к JSON (текст) и прочитать geoJSON, используя пакет вроде geojsonio,

Вот как выглядит мой JSON-код:

{
  "all": [
    {
      "type": "Feature",
      "geometry": {
        "type": "GeometryCollection",
        "geometries": [
          {
            "type": "Point",
            "coordinates": [
              -75.155727,
              39.956318
            ]
          },{
            "type": "LineString",
            "coordinates": [
              [
                -75.15567895337301,
                39.95653558798881
              ],[
                -75.15575995337292,
                39.95616931624319
              ]
            ]
          },{
            "type": "Point",
            "coordinates": [
              -75.15566,
              39.956432
            ]
          }
        ]
      },
      "properties": {
        # properties
      }
    },{ 
      # more features of mixed type
    }
  ]
}

1 ответ

Возможно

x <- '{
  "all": [
    {
      "type": "Feature",
      "geometry": {
        "type": "GeometryCollection",
        "geometries": [
          {
            "type": "Point",
            "coordinates": [
              -75.155727,
              39.956318
            ]
          },{
            "type": "LineString",
            "coordinates": [
              [
                -75.15567895337301,
                39.95653558798881
              ],[
                -75.15575995337292,
                39.95616931624319
              ]
            ]
          },{
            "type": "Point",
            "coordinates": [
              -75.15566,
              39.956432
            ]
          }
        ]
      },
      "properties": null
    }
  ]
}'
sf::st_read(jqr::jq(x, ".all[]"))

(строка отредактирована, чтобы быть действительным JSON)

Другие вопросы по тегам