R SpatialPointsDataFrame
의 sp
패키지를 사용하여 유형의 객체를 만들었습니다 . 그러나 @, $, . and []
연산자와 객체를 사용하여 객체의 다른 속성에 액세스하는시기에 대해 혼란 스럽 습니다. 내 샘플 코드는 다음과 같습니다.
library(sp)
library(rgdal)
#creating a SpatialPointsDataFrame with sample points in UTM
x <- c(15.2, 15.3, 15.4, 15.5, 15.7)
y <- c(50.4, 50.2, 50.3, 50.1, 50.4)
v1 <- c(1.0, 2.0, 3.0, 4.0, 5.0)
v2 <- c("a","b","b","c","a")
attributes <- as.data.frame(cbind(v1,v2))
xy <- cbind(x,y)
locationsDD <- SpatialPointsDataFrame(xy, attributes)
proj4string(locationsDD) <- CRS("+proj=longlat")
locations <- spTransform(locationsDD, CRS("+proj=utm +zone=33"))
plot(locations)
#using the different operators: WHEN TO USE @, $ or [] ?
#all these work!
property1 <- locations$v1
property2 <- locations@data$v1
property3 <- locations@data[,"v1"]
property4 <- locations@data["v1"]
#these also work
property5 <- locations@coords
property6 <- locations@bbox
property7 <- locations@coords[,2]
#these three work only in my special case
property8 <- locations@coords[,"y"]
property9 <- locations$x
property10 <- locations$y
#these don't work: $ operator is invalid for atomic vectors
property11 <- locations@coords$x
property12 <- locations@coords$y
누가 @, $, []
연산자 를 사용할 때 나를 도울 수 있습니까? 나는이 문서를 읽을 때 ?SpatialPointsDataFrame
나는 같은 다른 속성 볼 수 있습니다 coords
또는 bbox
그러나 나는 어떤 운전자 혼동하고있어 @, $, []
접근로를 사용하는 방법을하거나 수정합니다.
R
구문에 대한 질문이므로sp
패키지 또는 해당 오브젝트 에만 국한되지는 않습니다 .R
튜토리얼과 함께 설치됩니다 : 당신의 연구에서 시작하십시오. 웹과 인쇄 매체는 학습을위한 풍부한 추가 리소스를 제공합니다R
.