수색…


XY 데이터 세트에서 공간 점 생성

지리 데이터와 관련하여 R은 데이터 처리, 분석 및 시각화를위한 강력한 도구임을 보여줍니다.

종종 공간 데이터는 테이블 형식으로 설정된 XY 좌표 데이터로 사용 가능합니다. 이 예에서는 XY 데이터 세트에서 공간 데이터 세트를 작성하는 f}을 보여줍니다.

rgdalsp 패키지는 강력한 기능을 제공합니다. R의 공간 데이터는 Spatial*DataFrame ( *Points , Lines 또는 Polygons 될 수 있음)으로 저장할 수 있습니다.

이 예제는 OpenGeocode 에서 다운로드 할 수있는 데이터를 사용합니다.

처음에는 작업 디렉토리를 다운로드 한 CSV 데이터 세트의 폴더로 설정해야합니다. 또한 패키지 rgdal 을로드해야합니다.

setwd("D:/GeocodeExample/")
library(rgdal)

그런 다음 도시와 지리적 좌표를 저장하는 CSV 파일을 data.frame 으로 R에로드합니다.

xy <- read.csv("worldcities.csv", stringsAsFactors = FALSE)

종종 데이터와 그 구조 (예 : 열 이름, 데이터 형식 등)를 한눈에 파악하는 것이 유용합니다.

head(xy)
str(xy)

위도와 경도 열은 "-33.532"와 같은 항목을 포함하고 있으므로 문자 값으로 해석됩니다. 그러나 공간 데이터 세트를 생성하는 나중에 사용되는 SpatialPointsDataFrame() 함수는 좌표 값이 numeric 데이터 유형이어야합니다. 따라서 두 열을 변환해야합니다.

xy$latitude <- as.numeric(xy$latitude)
xy$longitude <- as.numeric(xy$longitude)

값의 일부만을 숫자 데이터로 변환 할 수 없으므로 NA 값이 생성됩니다. 그들은 제거해야합니다.

xy <- xy[!is.na(xy$longitude),]

마지막으로 XY 데이터 세트를 공간 데이터 세트로 변환 할 수 있습니다. 좌표가 저장되는 좌표 참조 시스템 (CRS)의 좌표와 사양이 필요합니다.

xySPoints <- SpatialPointsDataFrame(coords = c(xy[,c("longitude", "latitude")]),
proj4string = CRS("+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs"),
data = xy
)

기본 플롯 기능을 사용하면 생성 된 공간 점을 몰래 들여다 볼 수 있습니다.

plot(xySPoints, pch = ".")

여기에 이미지 설명을 입력하십시오.

모양 파일 가져 오기 (.shp)

rgdal

ESRI shape 파일은 rgdal 패키지의 rgdal readOGR() 함수를 사용하여 쉽게 R로 가져올 수 있습니다.

library(rgdal)
shp <- readORG(dsn = "/path/to/your/file", layer = "filename")

dsn/ 끝나서는 안되며 layer 에서 파일 끝 (예 : .shp )을 허용하지 않는 것이 중요합니다.

래스터

shapefile을 가져 오는 또 다른 방법은 raster 라이브러리와 shapefile 함수를 사용하는 것입니다.

library(raster)
shp <- shapefile("path/to/your/file.shp")

경로 정의가 rgdal import 문과 다른 점에 유의하십시오.

맵핑

tmap 패키지는 rgdal::readORG 함수에 대한 멋진 래퍼를 제공합니다.

library(tmap)    
sph <- read_shape("path/to/your/file.shp")


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow