다른 레이어에서 다른 점 세트 주위의 한 점 세트의 클러스터를 찾으십니까?


10

다른 유형의 건물 (y) 주위에 특정 유형의 건물 (x)이 군집되어 있는지 확인하고 싶습니다.

두 점 파일은 서로 다른 레이어에 있습니다.

이 작업을 수행하는 데 사용할 도구를 알 수 없습니다.

답변:


9

ArcGIS (또는 다른 GIS, AFAIK)의 기본 제공 도구는 작업을 올바르게 수행하지 않습니다.

이와 같은 문제에서는 "클러스터링 (clustering)"으로 의미하는 바를 수량화 한 다음 우연한 확률로 측정 된 군집 수준이 생성 될 수 있는지 여부를 평가하기 위해 확률 모델을 배치해야합니다.

진행 방법의 예로 x 유형의 건물과 y 유형 의 가장 가까운 건물 사이의 일반적인 거리를 기준으로 군집을 측정 할 수 있습니다 . 이것은 쉬운 계산입니다. 단순히 두 개의 건물 세트를 별도의 점 레이어로 표현하고 Y와 X의 공간적 결합을 수행하면됩니다. 각 유형 x 건물 에 대해 여전히 하나의 레코드가있는 속성 테이블에 이제 가장 가까운 y 까지의 거리가 포함됩니다 . 평균 거리를 측정 값으로 사용할 수 있습니다.

이것이 우연의 결과 일 수 있는지 테스트하는 것은 까다 롭습니다. 이 설정 중 하나 개 그럴듯한 해석의 이전 존재한다는 것입니다 Y 형 건물의 개발을 장려 X의 상대적으로 가까이에 형 건물을 Y 의. 그렇지 않으면, 우리는 x 형 건물이 다른 건물들도 나타날 수있는 어느 곳에 나 건설 될 수 있다고 가정 할 수 있습니다 . 이것은 다음과 같은 순열 테스트로 이어집니다 . x 유형 건물 이 나타날 수 있는 모든 가능한 위치의 점 레이어를 만듭니다 . 이 층은 x 와 같은 기간 동안 건립 된 지역에있는 모든 건물의 위치가 될 수 있습니다.건물은 ( 물론 x 건물을 포함하여 ) 물론이었습니다. y 층을 공간적으로 결합하여 가장 가까운 y 유형 건물 까지의 거리를 얻습니다 . 나머지 계산은 속성 테이블에서 작동합니다. 지리적 계산이 수행됩니다. 당신이 할 일은 난수 생성기를 반복적으로 사용하여 모든 건물의 간단한 무작위 샘플을 채취하는 것입니다. 각 샘플에는 x 유형 건물 과 동일한 수의 요소가 있습니다 . 이 샘플의 평균 거리를 계산하십시오. 평균 거리 통계가 많이 나올 때까지 반복하십시오. 거의 모든 랜덤하게 얻은 평균 거리가 x에 대해 측정 한 평균 거리 보다 큰 경우유형 건물의 경우 x 가 우연히 모여 있지 않다는 결론을 내릴 수 있습니다 . 효과는 실제입니다.

(이러한 계산은 'R'과 같은 목적에 적합한 플랫폼에서 가장 잘 프로그래밍되지만 Excel과 같은 거의 모든 컴퓨팅 소프트웨어를 서비스에 제공 할 수 있습니다. 무작위로 배열의 요소.)

이 순열 테스트 방법은이 영역의 건물 개발 패턴을 명시 적으로 설명하기 때문에 사전 프로그래밍 된 솔루션보다 우수합니다. 이렇게하지 않으면, 당신은 종종 합니다 클러스터링의 "중요한"증거를 발견하지만, 클러스터링 다른 요인에 의해 발생했을 수 있기 때문에 당신은 도로의 패턴의 위치로, 그것에서 아무것도 유용하게 결론을 내릴 수 없다 개발에 적합한 사이트 및 기타 여러 가지.


1
이 답변은 약간 추상적이라는 것을 알고 있습니다. 시간이 더 있으면 현실적인 그림을 만들려고합니다.
whuber

R을 사용하는 사람들에게는 spatstat 패키지 ( cran.r-project.org/web/packages/spatstat/index.html )에 클러스터 분석을 제공하는 것이 좋습니다 .
om_henners

2

물론 데이터 분석 방법은 분석 동기를 부여하는 실질적인 문제에 의존해야합니다.

그러나 여기 몇 가지 아이디어가 있습니다.

ESRI에서 :

다중 거리 공간 클러스터 분석 방법 : Ripley의 k- 함수 (공간 통계) 작동 방식 : 방정식의 i와 j는 건물 x와 y를 나타냅니다. 리플리의 K- 함수는 확률 론적 추론을 제공 할 것이다.

컴퓨터 과학에서 :

코 로케이션 패턴 검색을위한 복잡한 알고리즘이 있습니다.


"간단한 줄거리 아이디어"는 흥미롭지 만 비교할 무언가가 필요합니다. 그 자체로 유용한 정보를 추출하기는 어렵습니다. Ripley의 K 함수도 유용한 도구이지만 유감스럽게도 많은 경우 데이터 집합의 지오메트리 만 반영합니다. 교외 또는 시골 지역에 선형 지형 (도로)을 따라있는 주택이있는 경우 K 기능은 이러한 이유로 "유의 한"군집을 명확하게 보여줍니다. 따라서 도로 근처에 지어진 것 이외의 주택에는 유용하지 않습니다!
whuber

@ whuber Ripley의 K 함수 문제에 대한 설명에 감사드립니다. 둘째, 시간이 지남에 따라 주가의 플롯을 볼 때 일반적인 추세를 올리거나 내리거나 무작위로 찾을 수 있으며, 크게 감소하거나 증가한 픽업 시간을 찾아서 그 이유를 물을 수 있습니다. 거리 변화에 따라 건물의 농도가 어떻게 변하는 지에 대한 도표는 같은 방식으로 사용될 수 있습니다. 임의 분포에 대한 증거인 집중 스파이크를 검색하는 데 사용할 수 있으며 호기심 스파이크에 대한 추가 조사에 초점을 맞출 수도 있습니다.
b_dev

네가 옳아. 내 요점은 줄거리 자체가 클러스터링에 대해 아무 것도 알려주지 않는다는 것입니다. 아마도 주가가 아닌 좋은 유추는 미국에서 2000-2010 년까지 신장 암 사례 수의 합병증지도 일 것입니다. 그것은 또한 (지리적) 군집화 에 대해서는 아무 것도 알려주지 않기 때문에 주들 사이의 인구 변동을 설명하지 않기 때문입니다. 유사하게, 교차 K 플롯은 해석 할 수있는 적절한 정규화 또는 참조가 필요합니다. 일반적인 추세, 급등 등은 모든 건물 위치 의 지리적 패턴을 반영한 것일 수 있습니다.
whuber

@whuber 당신이 맞아요. 귀하의 위의 의견을 읽은 후, 나는 간단한 플롯 아이디어가 적어도 설명 된대로 많은 정보를 제공하지 않기로 결정했기 때문에 사람들을 혼동하지 않도록 제거했습니다. 나는 이제 Joint Count Statistic이 문제에 접근하는 가장 간단한 방법이라고 생각합니다.
b_dev

2

GIS에서 직접 클러스터 분석을 한 적이 없지만 X 및 / 또는 Y의 특정 클러스터를 나타내는 점 / 폴리곤을 만들면 더 쉬울 수 있습니다. 예를 들어, Y 건물을 나타내는 점을 만든 경우 다음을 수행 할 수 있습니다. 점 거리 도구를 사용 하여 원점 위치에서 지정된 거리 내에 X 건물의 모든 점을 가져옵니다.

그렇지 않으면, Y 유형의 건물 주변에 버퍼를 만들고 X 유형의 모든 건물을 선택하면 ArcInfo가없는 경우 동일한 결과를 얻을 수 있습니다.


0

이진 열 (0,1)을 추가하여 두 레이어를 결합하여 건물이 X인지 Y인지를 식별 할 수 있습니다.

GeoDa 를 사용하여 로컬 공간적 자기 상관 (클러스터링)을 식별하고 높음 (하나의 레이어가 다른 레이어 주위에 클러스터 된) 낮음 (반대) 또는 높음 또는 낮음 (자체- 클러스터링). 사용자 안내서는 여기 (.pdf)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.