유사한 위치 찾기 도구는 피처 속성을 기반으로 하나 이상의 입력 피처와 가장 유사하거나 유사하지 않은 후보 피처를 식별합니다.
워크플로 다이어그램
GeoAnalytics Tools를 사용하여 분석
GeoAnalytics Tools를 사용하는 분석은 여러 ArcGIS GeoAnalytics Server 머신 및 코어에서 분산 처리를 사용하여 실행됩니다. ArcGIS Enterprise의 GeoAnalytics Tools 및 표준 피처 분석 도구에는 다양한 매개변수와 기능이 있습니다. 이러한 차이점에 대한 자세한 내용은 피처 분석 도구의 차이점을 참고하세요.
사례
고객 프로필과 관련하여 최고 매출 매장과 가장 유사한 실적을 내는 매장을 결정합니다.
질병으로 인한 타격을 가장 많이 입은 마을의 특성을 볼 때 높은 위험도를 안고 있는 다른 마을은 어디입니까?
방과 후 피트니스 프로그램은 A 마을에서 굉장히 성공적이었습니다. 기획자는 프로그램 확장을 위한 후보로 비슷한 특성의 다른 마을을 찾고자 합니다.
범죄 분석가는 최근 범죄가 더 큰 패턴이나 동향의 일부가 될 수 있는지 확인하기 위해 모든 범죄의 데이터베이스를 검색하고자 합니다.
인적 자원 관리자는 회사의 급여 수준을 증명하고자 합니다. 크기, 생활비, 편의 시설이 비슷한 도시를 식별한 후 희망 직위에 대한 급여 수준을 검토하고 회사 급여와 비슷한지 결정합니다.
사용 참고 사항
테이블 형식, 포인트, 라인 또는 영역 피처를 사용할 수 있습니다.
입력 레이어의 모든 피처를 사용하거나 원하는 항목을 선택하여 참조를 할 수 있습니다. 선택 버튼 을 사용하여 대화형으로 선택하거나 쿼리 버튼 을 사용하여 필터를 통해 선택할 수 있습니다. 선택 버튼을 사용하여 여러 피처를 선택하거나 선택 해제할 수 있습니다. 참조 레이어에서 선택을 하려는 경우에는 쿼리를 하나만 사용할 수 있습니다.
입력 후보 레이어가 필요합니다. 후보 레이어의 피처 순위는 참조 위치에 대한 유사성을 기준으로 매겨집니다.
순위가 매겨진 유사성은 유사성 기준 매개변수에 지정된 필드를 기준으로 합니다. 필드를 둘 이상 지정할 수 있습니다. 이름이 참조 레이어와 일치하는 숫자 필드만 선택할 수 있습니다. 순위 번호가 가장 낮은 피처가 참조 레이어와의 유사성이 가장 높습니다.
기본 설정에 따라 후보 위치 레이어의 모든 피처(최대 10,000개)는 가장 유사한 항목부터 가장 덜 유사한 항목 순서로 순위가 매겨집니다. 보기 매개변수를 사용하면 반환할 피처 수를 지정할 수 있습니다.
다음을 사용하여 가장 덜 유사한 항목과 가장 유사한 항목 확인 매개변수를 사용하면 피처 일치 방식을 지정할 수 있습니다. 필드 값 또는 필드 프로파일을 선택할 수 있습니다.
- 필드 값의 경우 유사성 기준을 사용하는 모든 피처에 대한 편차 제곱의 합이 가장 작은 후보가 가장 유사한 후보입니다. 모든 값은 편차가 계산되기 전에 표준화됩니다.
- 필드 프로파일의 경우 코사인 유사성이 측정됩니다. 코사인 유사성은 크기를 맞추기보다는 표준화된 속성 값 간의 동일한 관계를 찾습니다. A1, A2, A3이라는 유사성 기준 매개변수를 사용하는 필드가 3개 있다고 가정해 보겠습니다. A2는 A1보다 2배 크며, A3은 A2와 거의 같습니다. 필드 프로파일의 경우 도구에서 다음과 같은 속성 관계가 있는 후보를 찾습니다. A2는 A1보다 2배 크며 그 후 거의 같아집니다. 이 방법은 속성 간의 관계를 찾으므로 유사성 기준 매개변수에 대한 필드를 2개 이상 지정해야 합니다. 코사인 유사성 방법(필드 프로파일)을 사용하여 Los Angeles 등의 장소를 찾을 수 있습니다(전반적으로 더 작은 축척으로 표시됨). 예를 들어 자동차 수 대비 거주자 수가 20 미만인 인구 프로파일에 관심이 있을 수 있습니다. 코사인 유사성 색인 범위는 1.0(완벽한 유사성)~-1.0(완벽한 비유사성)입니다. 코사인 유사성 색인은 결과 피처 simindex(코사인 유사성) 필드에 기록됩니다.
매칭에 사용된 모든 필드가 결과에 기록됩니다. 결과를 추가할 필드 선택을 사용하면 필요에 따라, 결과 테이블에 추가할 필드를 지정할 수 있습니다. 기본 설정에 따라 모든 필드가 추가됩니다.
일치하는 필드 및 결과에 추가할 필드 외에도 다음 필드가 결과에 포함됩니다.
필드 이름 | 설명 | 참고 사항 |
---|---|---|
location_type | 참조 레이어의 피처인지 검색 레이어의 피치인지를 나타내는 문자열입니다. | 이 필드는 항상 결과에 포함됩니다. |
simrank | 가장 유사한 위치 또는 가장 유사한 항목 및 가장 덜 유사한 항목을 선택하면 모든 해결 방법 일치가 가장 유사한 항목부터 가장 덜 유사한 항목 순서로 순위가 매겨집니다. 가장 유사한 해결 방법 일치의 순위 값은 1입니다. | 이 필드는 가장 유사한 항목 또는 가장 유사한 항목 및 가장 덜 유사한 항목을 선태한 경우에만 포함됩니다. |
dissimrank | 가장 덜 유사한 위치 또는 가장 유사한 항목 및 가장 덜 유사한 항목을 선택하면 모든 해결 방법 일치가 가장 덜 유사한 항목부터 가장 유사한 항목 순서로 순위가 매겨집니다. 가장 덜 유사한 해결 방법 일치의 순위 값은 1입니다. | 이 필드는 가장 덜 유사한 항목 또는 가장 유사한 항목 및 가장 덜 유사한 항목을 선태한 경우에만 포함됩니다. |
simindex | 이 필드는 각 해결 방법 일치가 참조 피처와 얼마나 유사한지를 정량화합니다. 필드 값을 지정할 때 이 값은 제곱 값 차이의 합계를 나타냅니다. | 이 필드는 필드 값을 선택한 경우에만 포함됩니다. |
cosimindex | 이 필드는 각 해결 방법 일치가 참조 피처와 얼마나 유사한지를 정량화합니다. 필드 프로파일을 지정할 때 이 값은 코사인 유사성을 나타냅니다. | 이 필드는 필드 프로파일을 선택한 경우에만 포함됩니다. |
labelrank | 이 필드는 표시 목적으로만 사용됩니다. 도구는 이 필드를 사용하여 분석 결과의 기본 렌더링을 제공합니다. | 이 필드는 항상 결과에 포함됩니다. |
reference_id | 참조 피처의 고유 ID(Unique ID) 값입니다. 검색 피처는 Null 값으로 주어집니다. | 이 값은 ArcGIS Enterprise 10.6.1에서 도입되었습니다. |
search_id | 검색 값 피처의 고유 ID(Unique ID) 값입니다. 참조 피처는 Null 값으로 주어집니다. | 이 값은 ArcGIS Enterprise 10.6.1에서 도입되었습니다. |
ArcGIS Enterprise 10.6.1에서 유사성 계산의 요약은 항목 세부정보 페이지에서 제공됩니다. 요약에는 다음 내용이 포함됩니다.
- 입력 피처 요약 - 참조 피처로 사용된 하나 이상의 피처의 통계 요약입니다. 하나 이상의 피처가 사용되면 이 값이 평균 값입니다. 계산에 사용된 각 필드는 행으로 나타납니다.
- 관심 속성 요약 - 검색 피처의 통계 요약입니다. 계산에 사용된 각 필드는 행으로 나타납니다.
- 세 번째 테이블은 가장 가깝게 일치하는 검색 피처를 나타냅니다. 이 테이블에는 최대 50개 피처가 표시되지만 더 많은 피처가 일치할 수도 있습니다. 테이블에는 위 테이블에 간략하게 설명된 search_id, simrank, simindex가 표시됩니다.
제한 사항
- 참조 레이어와 후보 레이어에는 이름이 일치하는 숫자 필드가 하나 이상 있어야 합니다.
- 필드 프로파일 방법을 사용하는 경우 참조 레이어와 후보 레이어에는 이름이 일치하는 숫자 필드가 두 개 이상 있어야 합니다.
유사한 위치 찾기 작동 방식
유사한 위치 찾기를 사용하려면 참조 위치, 후보 검색 위치, 일치해야 하는 기준을 나타내는 필드를 제공합니다. 분석을 위해 선택한 레이어에는 참조 또는 벤치마크 위치가 포함되어야 합니다. 예를 들어 참조 위치는 최고 실적을 내는 매장이나 질병으로 인한 타격을 가장 많이 입은 마을을 포함하는 레이어일 수 있습니다. 그런 다음 후보 검색 위치를 포함하는 레이어를 지정합니다. 이는 모든 매장 또는 모든 다른 마을이 될 수 있습니다. 마지막으로 하나 이상의 필드를 식별하여 유사성을 측정하는 데 사용합니다. 유사한 위치 찾기는 선택한 모든 필드에서 참조 위치와 얼마나 일치하는지에 따라 모든 후보 검색 위치의 순위를 매깁니다.
경우에 따라서 한 분석 레이어에 참조 위치와 후보 검색 위치가 모두 포함되어 있을 수 있습니다. 예를 들어 모든 매장을 포함하는 단일 레이어가 있고 최고 실적을 내는 매장과 비교하여 가장 유사한 매장에서부터 가장 덜 유사한 매장순으로 순위를 매기고 싶을 수 있습니다. 매장 레이어를 분석 레이어와 후보 검색 레이어로 모두 사용할 수 있습니다. 그런 다음 선택 도구 중 하나를 사용하여 최고 실적을 내는 매장을 식별해야 합니다. 대화형 쿼리를 사용하거나 쿼리를 작성하여 참조 위치를 선택할 수 있습니다. 다른 방법으로는 매장 레이어의 복사본을 생성하여 콘텐츠 목록에 두 가지 버전을 만듭니다. 첫 번째 복사본 아래의 필터 버튼을 클릭한 다음 필터를 지정하여 최고 매출 매장을 선택합니다. 그런 다음 두 번째 레이어 아래의 필터 버튼을 클릭하고 필터를 지정하여 후보 검색 위치를 선택합니다(최고 매출 매장을 제외한 모든 매장이 될 수 있음). 첫 번째 레이어가 분석 레이어 입니다(레이어 아래의 분석 수행을 클릭하거나 맵 상단의 분석 버튼을 클릭한 다음 위치 찾기 범주를 확장하여 유사한 위치 찾기로 이동함). 두 번째 레이어에 유사 위치 검색 매개변수를 지정합니다. 이것이 후보 검색 위치입니다.
다른 경우에는 참조 레이어와 후보 검색 레이어가 별도로 존재합니다. 최고 매출 매장과 매장 고객 기반을 보여 주는 필드(예: 중간 소득, 결혼 여부 등의 필드)를 포함하는 매장 레이어와 새 매장 건축에 대해 최상의 위치를 결정하기 위한 후보 필지 레이어가 있을 수 있습니다. 이 경우 참조 위치 레이어에 참조 위치보다 많은 위치가 포함되어 있다면 먼저 위에 설명된 대로 선택 도구 중 하나를 사용하여 참조 위치를 식별해야 합니다. 레이어에 참조 위치(예: 최고 매출 매장)만 포함되어 있다면 선택할 필요가 없습니다. 후보 검색 위치(매개변수 2)에 대한 필지 레이어를 지정합니다. 필지와 최고 매출 매장 모두에 고객 기반을 보여 주는 필드가 있다면 유사한 위치 찾기 기능을 실행하여 후보 필지를 최고 매출 매장의 고객과 같은 인구 특성과 식별할 수 있습니다.
참조 위치가 두 개 이상 있는 경우 유사성은 지정한 필드의 평균에 기반을 둡니다. 예를 들어 두 개의 참조 위치가 있고 인구를 매칭하고 싶다면 도구는 두 개의 참조 위치에 대한 평균 인구와 가장 비슷한 인구가 있는 후보 검색 위치를 검색하게 됩니다. 예를 들어 참조 위치의 값이 100과 102이면 도구에서 인구가 101에 가까운 후보 검색 위치를 검색하게 됩니다. 이에 따라 유사한 값이 있는 참조 위치 필드에 대한 필드를 선택하고자 할 것입니다. 또한 예를 들어 하나의 참조 위치에 대한 인구값이 100이며 다른 인구값은 100,000이라면 도구에서는 이 두 값의 평균 50,050. 이 평균값은 양쪽 참조 위치의 인구에 근접하지 않습니다.
ArcGIS API for Python 예시
유사한 위치 찾기 도구는 ArcGIS API for Python을 통해 제공됩니다.
이 예시에서는 현재 상위 위치 및 해당 속성을 기반으로 잠재적 리테일 위치를 찾습니다.
# Import the required ArcGIS API for Python modules
import arcgis
from arcgis.gis import GIS
from arcgis.geoanalytics import find_locations
# Connect to your ArcGIS Enterprise portal and confirm that GeoAnalytics is supported
portal = GIS("https://myportal.domain.com/portal", "gis_publisher", "my_password", verify_cert=False)
if not portal.geoanalytics.is_supported():
print("Quitting, GeoAnalytics is not supported")
exit(1)
# Find the feature layer containing the stores and filter to obtain stores in the top percentile
stores_search_result = portal.content.search("Stores", "Feature Layer")
stores_layer = stores_search_result[0].layers[0]
stores_layer.filter = "top_percentile = 'true'"
# Find the feature layer you'll use to search for similar locations
locations_search_result = portal.content.search("PotentialLocations", "Feature Layer")
locations = locations_search_result[0].layers[0]
# Run the Find Similar Locations tool
similar_location_result = find_locations.find_similar_locations(input_layer = stores_layer,
search_layer = locations,
analysis_fields = "median_income, population, nearest_competitor",
most_or_least_similar = "MostSimilar",
match_method = "AttributeValues",
number_of_results = 50,
output_name = "similar_locations")
# Visualize the tool results if you are running Python in a Jupyter Notebook
processed_map = portal.map('Europe')
processed_map.add_layer(similar_location_result)
processed_map
유사한 도구
유사한 위치 찾기를 사용하면 후보 레이어와 참조 레이어의 위치 유사성을 측정할 수 있습니다. 서로 비슷하지만 약간 다른 문제를 해결하는 데 유용한 기타 도구를 사용할 수 있습니다.
Map Viewer 분석 도구
표준 분석 도구를 사용하여 유사한 위치를 찾으려면 유사한 위치 찾기를 참고하세요.
쿼리를 통해 기존 위치를 선택하려는 경우 표준 기존 위치 찾기 도구를 사용하세요.
쿼리를 사용하여 새 피처를 생성하려는 경우에는 표준 새 위치 파생 도구를 사용합니다.
ArcGIS Desktop 분석 도구
GeoAnalytics Tools 유사한 위치 찾기는 ArcGIS Pro에서 제공됩니다.