현대 표석 DB: 두 판 사이의 차이
둘러보기로 이동
검색으로 이동
편집 요약 없음 |
편집 요약 없음 |
||
| 62번째 줄: | 62번째 줄: | ||
* 제원_설치시점: 부기사항 중 설치 시점. | * 제원_설치시점: 부기사항 중 설치 시점. | ||
* 제원_주체: 부기사항 중 설치 주체. | * 제원_주체: 부기사항 중 설치 주체. | ||
== 단행본 『한국 역사 GIS』(미출간)에 사용한 코드 == | |||
<syntaxhighlight lang="python"> | |||
# 브이월드 Open API를 사용하는 지번 함수를 정의 | |||
import requests | |||
def parcel2xy(addr): | |||
apiurl = "https://api.vworld.kr/req/address?" | |||
params = { | |||
"service": "address", | |||
"request": "getcoord", | |||
"crs": "epsg:4326", | |||
"address": addr, | |||
"format": "json", | |||
"type": "parcel", | |||
"key": "브이월드에서 받은 인증키를 이곳에 입력" | |||
} | |||
response = requests.get(apiurl, params=params) | |||
data = response.json() | |||
try: | |||
if data["response"]["status"] == "OK": | |||
point = data["response"]["result"]["point"] | |||
return point["x"], point["y"] | |||
except Exception as e: | |||
print("error:", e) | |||
return None, None | |||
# 브이월드 Open API를 사용하는 도로명주소 함수를 정의 | |||
import requests | |||
def road2xy(addr): | |||
apiurl = "https://api.vworld.kr/req/address?" | |||
params = { | |||
"service": "address", | |||
"request": "getcoord", | |||
"crs": "epsg:4326", | |||
"address": addr, | |||
"format": "json", | |||
"type": "road", | |||
"key": "브이월드에서 받은 인증키를 이곳에 입력" | |||
} | |||
response = requests.get(apiurl, params=params) | |||
data = response.json() | |||
try: | |||
if data["response"]["status"] == "OK": | |||
point = data["response"]["result"]["point"] | |||
return point["x"], point["y"] | |||
except Exception as e: | |||
print("error:", e) | |||
return None, None | |||
# 주소가 저장된 엑셀 파일 열기 | |||
import pandas as pd | |||
df = pd.read_excel("address.xlsx") | |||
# 지번 지오코딩 후 결과를 새 필드에 부착 | |||
lons, lats = [], [] | |||
for addr in df["parcel"]: | |||
lon, lat = parcel2xy(addr) | |||
print(f"지오코딩 수행 중 ... 주소 -> 경도, 위도") | |||
lons.append(lon) | |||
lats.append(lat) | |||
df["parcel_x"] = lons | |||
df["parcel_y"] = lats | |||
# 도로명주소 지오코딩 후 결과를 새 필드에 부착 | |||
lons, lats = [], [] | |||
for addr in df["road"]: | |||
lon, lat = road2xy(addr) | |||
print(f"지오코딩 수행 중 ... 주소 -> 경도, 위도") | |||
lons.append(lon) | |||
lats.append(lat) | |||
df["road_x"] = lons | |||
df["road_y"] = lats | |||
# 별도의 엑셀 파일로 저장 | |||
df.to_excel("address_geocoded.xlsx", index = False) | |||
</syntaxhighlight> | |||
== 향후 작업 == | == 향후 작업 == | ||
2026년 3월 28일 (토) 03:53 판



공개 DB
- 현대_표석_이력: 링크는 일부 필드를 생략한 축약본이며 전체는 이 파일을 참조. 【다운로드(excel)】 (기준일: 2026년 1월 26일)
- 2026년 현재 서울특별시에서 표석 자료를 CSV, SHP 등으로 제공하는 공식 플랫폼은 '스마트서울맵'이므로, 공간데이터는 아래 7번 링크를 참조.
- 현대_표석_종로구_이력: 아래 '개요' 문단을 참조.
DB 개요
- DB 설명
- 현대_표석_이력
- '서울 역사문화유적표석'의 전체 이력. 지속 업데이트 중이므로 가급적 아래의 종로구 DB보다 이쪽을 참조할 것.
- 각 표석의 세부사항과 사진은 <groupid> 필드의 링크를 참조.
- 현대_표석_종로구_이력
- '서울 역사문화유적표석'의 전체 이력 중 2017년 12월 현재 종로구를 대상으로 함. 향후 업데이트 계획 없음.
- 인쇄본이자 최초 공개본은 최유식(2018)의 논문, "HGIS를 활용한 종로구 역사문화유적 표석의 이력DB 구축" [1] 에 부록으로 첨부됨.
- 현대_표석_이력
- DB 설계 및 구축: 최유식
- 참조 자료
- 1991년: 朴慶龍, 1991, "서울文化遺蹟 考察," 鄕土서울 50, 339-408. [2]
- 1995년: 서울특별시, 1995, 역사 문화 유적의 현장을 찾아: 문화유적 표석 문안집, 서울. [3]
- 2004년: 서울특별시, 2004, 역사 문화 유적 현장을 찾아: 역사문화유적 기념표석 문안집, 서울. [4]
- 2013년: 명지대학교 산학협력단, 2013, 표석정비 가이드라인 용역. [5]
- 2017년: 서울특별시, 서울형 지도태깅 공유마당. [6]
- 최유식(2018)의 논문 작성 당시 원시 데이터를 내려받았던 곳으로, 2026년 1월 현재 이 링크는 '스마트서울맵' 첫 화면으로 리다이렉트됨.
- 2024년: 서울특별시, 스마트서울맵, 역사문화표석. [7]
- 서울특별시가 주관하고 한국학중앙연구원이 수행한 연구용역, "온라인 플랫폼 제공 표석 정보 현행화 계획"(2024년 10월~12월)을 토대로 함. 2024년 7월 31일 현재.
- 자료 공개
- 비영리적 활동(논문, 연구서)에 본 자료 사용시, 인용 문구만 표시하면 사용에 제한 없음.
- 영리적인 목적(프로젝트)으로 사용할 경우에는 관계자(yusikchoi62@gmail.com)와 상의 후 처리.
- 본 자료 전체를 다른 곳에서 서비스하는 것은 제한함.
- 본 DB에 오류가 발견된 경우, yusikchoi62@gmail.com에 오류 신고.
- 인용 표기 : 「현대 표석 DB」, 202X년 X월 기준, 역지사지(https://www.hisgeo.info).
DB 설계
현대_표석_이력
- orig_order: DB 내에서 본래 의도한 배열 순서.
- id: 본 DB에서 표석의 이력을 구분하는 명칭. groupid와 year_bgn의 조합으로 설정함.
- groupid: 같은 표석에 일어난 변동임을 표시하기 위한 집합 명칭.
- year_bgn: 변동이 일어난 해.
- year_end: 다음 변동이 일어난 해. 현존하는 표석은 2024 대신 9999로 표기함.
- event_bgn: year_bgn에 일어난 변동(신설, 이설, 문안수정).
- event_end: year_end에 일어난 변동(이설, 문안수정, 철거, 현존, 기타).
- title_kor: 제목.
- insc_kor: 국문문안.
- num_char: 국문문안의 글자 수.
- district: 표석이 위치한 자치구.
- stamp: 문안 외에 옆, 아래, 뒷면에 부기된 정보.
- land_####: ####년도 자료원에 기록된 표석의 지번.
- xlsx_note: 기록할 만한 사항.
- xlsx_update: 속성 DB의 작성일.
- xlsx_creator: 속성 DB의 작성자.
현대_표석_종로구_이력
- ID: 본 DB에서 표석의 이력을 구분하는 명칭. '표석명_시작연도_종료연도'로 설정함.
- 표석명: 현재, 혹은 철거 직전의 가장 최근 제목.
- 시작연도: 변동이 일어난 해.
- 종료연도: 다음 변동이 일어난 해. 현존하는 표석은 2024 대신 9999로 표기함.
- 정비유형: 변동의 유형.
- 지번_####년: ####년도 자료원에 기록된 표석의 지번.
- 제원_번호: 부기사항 중 설치 순서.
- 제원_설치시점: 부기사항 중 설치 시점.
- 제원_주체: 부기사항 중 설치 주체.
단행본 『한국 역사 GIS』(미출간)에 사용한 코드
# 브이월드 Open API를 사용하는 지번 함수를 정의
import requests
def parcel2xy(addr):
apiurl = "https://api.vworld.kr/req/address?"
params = {
"service": "address",
"request": "getcoord",
"crs": "epsg:4326",
"address": addr,
"format": "json",
"type": "parcel",
"key": "브이월드에서 받은 인증키를 이곳에 입력"
}
response = requests.get(apiurl, params=params)
data = response.json()
try:
if data["response"]["status"] == "OK":
point = data["response"]["result"]["point"]
return point["x"], point["y"]
except Exception as e:
print("error:", e)
return None, None
# 브이월드 Open API를 사용하는 도로명주소 함수를 정의
import requests
def road2xy(addr):
apiurl = "https://api.vworld.kr/req/address?"
params = {
"service": "address",
"request": "getcoord",
"crs": "epsg:4326",
"address": addr,
"format": "json",
"type": "road",
"key": "브이월드에서 받은 인증키를 이곳에 입력"
}
response = requests.get(apiurl, params=params)
data = response.json()
try:
if data["response"]["status"] == "OK":
point = data["response"]["result"]["point"]
return point["x"], point["y"]
except Exception as e:
print("error:", e)
return None, None
# 주소가 저장된 엑셀 파일 열기
import pandas as pd
df = pd.read_excel("address.xlsx")
# 지번 지오코딩 후 결과를 새 필드에 부착
lons, lats = [], []
for addr in df["parcel"]:
lon, lat = parcel2xy(addr)
print(f"지오코딩 수행 중 ... 주소 -> 경도, 위도")
lons.append(lon)
lats.append(lat)
df["parcel_x"] = lons
df["parcel_y"] = lats
# 도로명주소 지오코딩 후 결과를 새 필드에 부착
lons, lats = [], []
for addr in df["road"]:
lon, lat = road2xy(addr)
print(f"지오코딩 수행 중 ... 주소 -> 경도, 위도")
lons.append(lon)
lats.append(lat)
df["road_x"] = lons
df["road_y"] = lats
# 별도의 엑셀 파일로 저장
df.to_excel("address_geocoded.xlsx", index = False)향후 작업
- (todo) 답사 후 표석 및 주변 사진 추가
- (todo) 영문문안 및 한자 추가
- (todo) 경위도 좌표 및 구글 지도 추가
DB 변화 이력
- 2024년 07월 27일: DB 최초 공개
- 2026년 01월 22일: 현대_표석_이력.xlsx 최초 공개
- 2026년 01월 26일: 현대_표석_이력.xlsx 내용 대거 수정 (major update)