我有一个包含两列numeric
类型的数据框。
foo <- data.frame(replicate(2,sample(10.1:15.2,100,rep=TRUE)))
X1 X2
1 13.1 15.1
2 13.1 11.1
3 13.1 15.1
4 10.1 13.1
5 15.1 11.1
6 13.1 11.1
...
这些数字代表 4326
中的坐标。X1
是纬度,X2
是经度。我如何获取所有这些坐标的边界框?
我有一个包含两列numeric
类型的数据框。
foo <- data.frame(replicate(2,sample(10.1:15.2,100,rep=TRUE)))
X1 X2
1 13.1 15.1
2 13.1 11.1
3 13.1 15.1
4 10.1 13.1
5 15.1 11.1
6 13.1 11.1
...
这些数字代表 4326
中的坐标。X1
是纬度,X2
是经度。我如何获取所有这些坐标的边界框?
转换为sf
并使用st_bbox
:
library(sf)
foo %>%
st_as_sf(coords = c("X2","X1"), crs = 4326) %>%
st_bbox()
# xmin ymin xmax ymax
# 10.1 10.1 15.1 15.1
如果您想在软件包中使用轻量级选项,则可以使用sfheaders
更简洁地进行操作。
sfheaders::sf_bbox(foo, x = "X2", y = "X1")
# xmin ymin xmax ymax
# 10.1 10.1 15.1 15.1
# attr(,"class")
# [1] "bbox"
但是,如果你已经在你的工作流中使用了sf
,那么纯粹的sf
方法就可以了。