Geopandas분석 주소를 좌표로
지하철 주소를 위도와 경도로 변경하기
카카오 key발급 후 사용할 수 있음
import requests
from urllib.parse import urlparse
import geopandas
import pandas as pd
add= pd.read_csv("서울교통공사 지하철역 주소 및 전화번호 정보.csv",engine='python',encoding='CP949')
def address_to_loaction(address):
global val
url = 'https://dapi.kakao.com/v2/local/search/address.json?query='+address
result=requests.get(urlparse(url).geturl(),
headers = {"Authorization": 'KakaoAK REST API 넣기'})
json_obj=result.json()
for document in json_obj['documents']:
val =[document['road_address']['building_name'], document['address_name'],document['y'], document['x']]
return val
address_to_loaction('서울특별시 동대문구 왕산로 지하 93 (제기동) (제기동역)')
['제기동역', '서울 동대문구 왕산로 지하 93', '37.5781967284885', '127.034690599752']
list=[]
for address in add["도로명주소"]:
list.append(address_to_loaction(address))
df1=pd.DataFrame(list,columns=['1','2','lat','lon'])
df1
1 | 2 | lat | lon | |
---|---|---|---|---|
0 | 청량리역 | 서울 동대문구 왕산로 지하 205 | 37.5802331563072 | 127.045085886324 |
1 | 제기동역 | 서울 동대문구 왕산로 지하 93 | 37.5781967284885 | 127.034690599752 |
2 | 신설동역 | 서울 동대문구 왕산로 지하 1 | 37.5753194830738 | 127.024701893044 |
3 | 동묘앞역 | 서울 종로구 종로 359 | 37.5733722075697 | 127.01675118037 |
4 | 1호선 동대문역 | 서울 종로구 종로 지하 302 | 37.5717775660734 | 127.011167102297 |
... | ... | ... | ... | ... |
116 | 4호선 이촌역 | 서울 용산구 서빙고로 지하 83 | 37.522520254623 | 126.973683151228 |
117 | 4호선 동작역 Dongjak s.t | 서울 동작구 현충로 257 | 37.5028703671011 | 126.980268385443 |
118 | 총신대입구(이수)역4호선 | 서울 동작구 동작대로 지하 117 | 37.4875538278198 | 126.982199707405 |
119 | 사당역(4호선) | 서울 동작구 동작대로 지하 3 | 37.4768632653727 | 126.981595139341 |
120 | 남태령역 | 서울 서초구 과천대로 지하 816 | 37.4648575576518 | 126.988656544337 |
121 rows × 4 columns
df1.to_csv('D:/위도경도.csv',index=False)
댓글남기기