library(sf, quietly = TRUE)
## Linking to GEOS 3.5.0, GDAL 2.1.1, proj.4 4.9.3
library(dplyr, warn.conflicts = FALSE)
data("wrld_simpl", package = "maptools")
(sf_wrld <- st_as_sf(wrld_simpl))
## Loading required package: sp
## Simple feature collection with 246 features and 11 fields
## geometry type: MULTIPOLYGON
## dimension: XY
## bbox: xmin: -180 ymin: -90 xmax: 180 ymax: 83.57027
## epsg (SRID): 4326
## proj4string: +proj=longlat +datum=WGS84 +no_defs
## First 20 features:
## FIPS ISO2 ISO3 UN NAME AREA POP2005 REGION
## ATG AC AG ATG 28 Antigua and Barbuda 44 83039 19
## DZA AG DZ DZA 12 Algeria 238174 32854159 2
## AZE AJ AZ AZE 31 Azerbaijan 8260 8352021 142
## ALB AL AL ALB 8 Albania 2740 3153731 150
## ARM AM AM ARM 51 Armenia 2820 3017661 142
## AGO AO AO AGO 24 Angola 124670 16095214 2
## ASM AQ AS ASM 16 American Samoa 20 64051 9
## ARG AR AR ARG 32 Argentina 273669 38747148 19
## AUS AS AU AUS 36 Australia 768230 20310208 9
## BHR BA BH BHR 48 Bahrain 71 724788 142
## BRB BB BB BRB 52 Barbados 43 291933 19
## BMU BD BM BMU 60 Bermuda 5 64174 19
## BHS BF BS BHS 44 Bahamas 1001 323295 19
## BGD BG BD BGD 50 Bangladesh 13017 15328112 142
## BLZ BH BZ BLZ 84 Belize 2281 275546 19
## BIH BK BA BIH 70 Bosnia and Herzegovina 5120 3915238 150
## BOL BL BO BOL 68 Bolivia 108438 9182015 19
## MMR BM MM MMR 104 Burma 65755 47967266 142
## BEN BN BJ BEN 204 Benin 11062 8490301 2
## SLB BP SB SLB 90 Solomon Islands 2799 472419 9
## SUBREGION LON LAT geometry
## ATG 29 -61.783 17.078 MULTIPOLYGON(((-61.686668 1...
## DZA 15 2.632 28.163 MULTIPOLYGON(((2.9636100000...
## AZE 145 47.395 40.430 MULTIPOLYGON(((46.571382522...
## ALB 39 20.068 41.143 MULTIPOLYGON(((19.436214 41...
## ARM 145 44.563 40.534 MULTIPOLYGON(((45.153871536...
## AGO 17 17.544 -12.296 MULTIPOLYGON(((13.997499465...
## ASM 61 -170.730 -14.318 MULTIPOLYGON(((-169.444489 ...
## ARG 5 -65.167 -35.377 MULTIPOLYGON(((-65.748062 -...
## AUS 53 136.189 -24.973 MULTIPOLYGON(((142.51275825...
## BHR 145 50.562 26.019 MULTIPOLYGON(((50.532219 26...
## BRB 29 -59.559 13.153 MULTIPOLYGON(((-59.533058 1...
## BMU 21 -64.709 32.336 MULTIPOLYGON(((-64.78334 32...
## BHS 29 -78.014 24.628 MULTIPOLYGON(((-78.19195556...
## BGD 34 89.941 24.218 MULTIPOLYGON(((88.433046340...
## BLZ 13 -88.602 17.219 MULTIPOLYGON(((-88.377792 1...
## BIH 39 17.786 44.169 MULTIPOLYGON(((17.649841000...
## BOL 5 -64.671 -16.715 MULTIPOLYGON(((-65.190201 -...
## MMR 35 96.041 21.718 MULTIPOLYGON(((97.806641000...
## BEN 11 2.469 10.541 MULTIPOLYGON(((2.4844180000...
## SLB 54 160.109 -9.611 MULTIPOLYGON(((159.93829536...
## check the name of the geometry column (might be geom, or anything actually)
sf_union <- sf_wrld %>% group_by(REGION) %>% summarize(geometry = st_union(geometry), n_unioned = n())
plot(sf_union)

sf_union
## Simple feature collection with 6 features and 2 fields
## geometry type: MULTIPOLYGON
## dimension: XY
## bbox: xmin: -180 ymin: -90 xmax: 180 ymax: 83.57027
## epsg (SRID): 4326
## proj4string: +proj=longlat +datum=WGS84 +no_defs
## # A tibble: 6 × 3
## REGION n_unioned geometry
## <int> <int> <simple_feature>
## 1 0 10 <MULTIPOLYGON...>
## 2 2 57 <MULTIPOLYGON...>
## 3 9 25 <MULTIPOLYGON...>
## 4 19 53 <MULTIPOLYGON...>
## 5 142 50 <MULTIPOLYGON...>
## 6 150 51 <MULTIPOLYGON...>
## session info
devtools::session_info()
## Session info --------------------------------------------------------------
## setting value
## version R version 3.4.0 (2017-04-21)
## system x86_64, mingw32
## ui RTerm
## language (EN)
## collate English_Australia.1252
## tz Australia/Hobart
## date 2017-05-07
## Packages ------------------------------------------------------------------
## package * version date source
## assertthat 0.2.0 2017-04-11 CRAN (R 3.4.0)
## backports 1.0.5 2017-01-18 CRAN (R 3.4.0)
## bindr 0.1 2016-11-13 CRAN (R 3.4.0)
## bindrcpp * 0.1 2016-12-11 CRAN (R 3.4.0)
## DBI 0.6-1 2017-04-01 CRAN (R 3.4.0)
## devtools 1.12.0 2016-12-05 CRAN (R 3.4.0)
## digest 0.6.12 2017-01-27 CRAN (R 3.4.0)
## dplyr * 0.5.0.9004 2017-05-06 Github (tidyverse/dplyr@354b085)
## evaluate 0.10 2016-10-11 CRAN (R 3.4.0)
## glue 1.0.0 2017-05-05 Github (tidyverse/glue@5d765fe)
## htmltools 0.3.6 2017-04-28 CRAN (R 3.4.0)
## knitr 1.15.20 2017-04-29 Github (yihui/knitr@f3a490b)
## lattice 0.20-35 2017-03-25 CRAN (R 3.4.0)
## magrittr 1.5 2014-11-22 CRAN (R 3.4.0)
## memoise 1.1.0 2017-04-21 CRAN (R 3.4.0)
## R6 2.2.0 2016-10-05 CRAN (R 3.4.0)
## Rcpp 0.12.10 2017-03-19 CRAN (R 3.4.0)
## rlang 0.0.0.9019 2017-05-06 Github (hadley/rlang@fea1712)
## rmarkdown 1.5 2017-04-26 CRAN (R 3.4.0)
## rprojroot 1.2 2017-01-16 CRAN (R 3.4.0)
## sf * 0.4-2 2017-05-05 CRAN (R 3.4.0)
## sp * 1.2-4 2016-12-22 CRAN (R 3.4.0)
## stringi 1.1.5 2017-04-07 CRAN (R 3.4.0)
## stringr 1.2.0 2017-02-18 CRAN (R 3.4.0)
## tibble 1.3.0.9001 2017-05-06 Github (tidyverse/tibble@299839d)
## udunits2 0.13 2016-11-17 CRAN (R 3.4.0)
## units 0.4-4 2017-04-20 CRAN (R 3.4.0)
## withr 1.0.2 2016-06-20 CRAN (R 3.4.0)