시작하기무료로 시작하기

데이터가 일치하는지 확인하기

data 슬롯에 데이터를 억지로 넣으면 행과 공간 객체 사이의 올바른 대응 관계가 깨지기 때문에 올바르게 동작하지 않아요. 그럼 소득 데이터를 폴리곤 데이터에 어떻게 추가할 수 있을까요? 이를 위해 spmerge() 함수가 정확히 설계되어 있습니다.

여러분은 아마 데이터 프레임에서 merge()를 본 적이 있을 거예요. sp::merge()의 구조도 거의 동일하지만, Spatial*** 객체와 데이터 프레임을 전달하면, 반환되는 새로운 Spatial*** 객체의 데이터 슬롯은 기존 데이터 슬롯과 전달한 데이터 프레임이 병합된 형태가 됩니다. 이 병합을 수행하려면 공간 객체와 데이터 프레임 모두에서 서로 매칭할 ID를 담은 열이 필요합니다.

nyc_tractsnyc_income에는 둘 다 트랙트 ID 열이 있으므로, 두 데이터셋을 병합하기에 아주 적합합니다. 다만, 제안된 ID가 고유한지, 그리고 두 데이터셋의 모든 행에 대해 일대일로 매칭이 되는지 확인하는 것이 항상 좋아요.

병합으로 넘어가기 전에 이를 먼저 확인해 봅시다.

이 연습은 강의의 일부입니다

R로 지리공간 데이터 시각화하기

강의 보기

연습 안내

  • nyc_income$tractduplicated()any()를 사용해 nyc_income의 모든 행이 고유한 트랙트 ID를 갖는지 확인하세요.
  • nyc_tracts$TRACTCEduplicated()any()를 사용해 nyc_tracts의 모든 행이 고유한 트랙트 ID를 갖는지 확인하세요.
  • nyc_tracts$TRACTCE %in% nyc_income$tractall()을 사용해 nyc_tracts의 트랙트들이 모두 nyc_income에 포함되는지 확인하세요.
  • nyc_income$tract %in% nyc_tracts$TRACTCEall()을 사용해 nyc_income의 트랙트들이 모두 nyc_tracts에 포함되는지 확인하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Check for duplicates in nyc_income


# Check for duplicates in nyc_tracts


# Check nyc_tracts in nyc_income


# Check nyc_income in nyc_tracts
코드 편집 및 실행