data.frameからsfクラスのデータを作成する方法
結論から言うとst_as_sf(data.frame, coords=c(x, y), crs=4612)
というように行えばよい
library(sp) library(sf) data(meuse)
head(meuse) ## x y cadmium copper lead zinc elev dist om ffreq soil lime landuse ## 1 181072 333611 11.7 85 299 1022 7.909 0.00135803 13.6 1 1 1 Ah ## 2 181025 333558 8.6 81 277 1141 6.983 0.01222430 14.0 1 1 1 Ah ## 3 181165 333537 6.5 68 199 640 7.800 0.10302900 13.0 1 1 1 Ah ## 4 181298 333484 2.6 81 116 257 7.655 0.19009400 8.0 1 2 0 Ga ## 5 181307 333330 2.8 48 117 269 7.480 0.27709000 8.7 1 2 0 Ah ## 6 181390 333260 3.0 61 137 281 7.791 0.36406700 7.8 1 2 0 Ga ## dist.m ## 1 50 ## 2 30 ## 3 150 ## 4 270 ## 5 380 ## 6 470
meuse_sf <- st_as_sf(meuse, coords = c("x", "y"), crs = 28992)
class(meuse_sf) ## [1] "sf" "data.frame"
meuse_sf %>% st_geometry() %>% plot(axes=T)