GeoPandas를 이용한 '깃대종' 지역별 기사건수 지도화

댓글수0 다음블로그 이동

GIS

GeoPandas를 이용한 '깃대종' 지역별 기사건수 지도화

유병혁
댓글수0

안녕하세요? 이번 글은 GeoPandas를 이용한 '깃대종' 지역별 기사건수 지도화 과정을 정리해 보겠습니다.

학습 자료로는 빅카인즈(https://www.bigkinds.or.kr/)에서 수집한 '깃대종' 언급 뉴스 데이터를 사용합니다.


이전 글:

[1] 빅카인즈 뉴스 데이터를 이용한 '깃대종' 통계 가시화 | http://blog.daum.net/geoscience/1406

[2] 빅카인즈 뉴스 데이터를 이용한 '깃대종' 연관규칙 분석 | http://blog.daum.net/geoscience/1407

[3] NetworkX 파이썬 패키지를 이용한 네트워크 그래프 작성 | http://blog.daum.net/geoscience/1408


GeoPandas는 파이썬에서 지리공간 데이터를 보다 쉽게 다룰 수 있는 오픈소스 프로젝트입니다.

기존의 Pandas 데이터 유형에 지오메트리를 추가함으로써 확장된 기능을 사용하실 수 있습니다.

공식 홈페이지 | http://geopandas.org/


GeoPandas와 관련해서는 전상환님의 깃허브 자료를 추천 드립니다. PyCon Korea 2019에서 'Python으로

지리공간데이터 다루기' 주제를 발표해 주셨으며, 해당 연습코드를 깃허브를 통해 공유해주고도 계십니다.

전상환님 Geopandas 연습코드 깃허브 | https://github.com/rollinstar/gpd_example



그럼 GeoPandas를 설치해 보겠습니다. GeoPandas 설치 | http://geopandas.org/install.html

GeoPandas 설치는 conda 패키지 매니저 이용을 권장하고 있습니다.


conda 사용자가 아니신 분들은 whl을 통해 의존성 라이브러리들을 설치해주시면 됩니다.

Unofficial Windows Binaries for Python Extension Packages | https://www.lfd.uci.edu/~gohlke/pythonlibs/


직접 확인해보니 shapely, GDAL, Fiona, pyproj 패키지를 사전에 설치해주셔야 합니다.


conda의 장점 중 하나는 호환성이 검증된 패키지들을 하나로 제공하는 부분이 아닐까 생각됩니다.

예컨데 Fiona는 GDAL 3 버전이 아직 지원되지 않습니다. Fiona 깃허브 https://github.com/Toblerity/Fiona


GeoPandas 설치를 마쳤으면 라이브러리를 추가해 보겠습니다.


빅카인즈 뉴스 데이터를 열고 언론사 목록을 확인해 보겠습니다.


아래와 같이 빅카인즈는 총 54개 언론사(중앙지, 경제지, 지역종합지, 방송사, 전문지) 데이터를 제공하고 있습니다.


언론사별 '깃대종' 기사건수를 추출해 봤습니다. 깃대종 기사가 가장 많은 언론사는 중도일보입니다.

앞서 단어빈도 분석에서 대전이 51회, 대전시가 35회 출현했는데 지역언론의 역할을 알 수 있습니다. 


언론사별 깃대종 기사건수를 바 플롯으로 표현해 봤습니다.



이번에는 GeoPandas를 통해 우리나라 시도경계 쉐이프파일을 연결해 보겠습니다. 해당 데이터는

GADM을 사용했습니다. 전세계 국가 및 구역별 공간데이터 제공 'GADM' 소개 | http://blog.daum.net/geoscience/1257


시도경계를 지도화한 결과입니다. 아래와 같이 Pandas 문법이 GeoPandas에서도 적용됩니다. 편리하죠?!



지도는 준비되었으니 속성을 정제해 보도록 하겠습니다. 언론사별 시도를 아래와 같이 정의해봅니다. 시도 분류는 기본적으로

빅카인즈의 대분류를 따르며, 두 개 이상 시도가 연관된 언론사(예: 경인일보는 경기도, 인천)는 본사 위치를 기준으로 하였습니다.   


이제 시도별 기사건수를 산출할 수 있습니다. 서울, 대전, 전라북도 순으로 깃대종 기사가 많음을 확인해 봅니다.


아래와 같이 시도경계에 기사건수 컬럼을 결합했습니다. 이제 지도화를 해볼 수 있겠죠?!


시도별 기사건수를 지도화한 결과입니다. 사분위수(quantiles)를 통해 지역별 깃대종 기사건수를 대비해 봤습니다.

맨위로

http://blog.daum.net/geoscience/1409

신고하기