
정치학을 위한 파이썬
오늘날의 정치학은 정치 제도뿐 아니라 국가 간의 관계, 정당․언론 등에 대한 분석, 나아가 시민․유권자 등에 대한 실시간 분석까지 요구하고 있다. 컴퓨터 프로그래밍은 이러한 요구에 부응하는 또 하나의 도구이다. 특히 컴퓨터 프로그래밍 언어인 파이썬(Python)은 이 분야를 전혀 모르는 초보자도 손쉽게 배울 수 있는 언어로서 정치 현상의 이해와 분석을 위한 주요 도구로 활용될 수 있을 것으로 기대된다. 그러나 지금까지 파이썬 프로그래밍에 관한 책은 대부분 영어로 쓰였으며, 그 가운데서도 인문사회학도, 특히 정치학도를 위한 데이터 수집과 분석이라는 목적에 맞춰진 책은 드물었다. 이에 컴퓨터 프로그래밍을 전공하지 않은 이들도 파이썬에 쉽게 접근하고 바로 활용할 수 있도록 집필된 책이 이 책 『정치학을 위한 파이썬』이다.
이 책은 파이썬을 이용해 비정형적 자료, 특히 실시간으로 제공되는 빅데이터를 분석하는 데 중점을 둔다. 총 5장 중 1~2장에서는 파이썬 언어를 개관하고, 3~5장에서는 파이썬을 이용하여 실제로 데이터를 추출․분석하는 방법을 다룬다. 구체적으로는 제1장에서 정치학 분야에서 컴퓨터 프로그래밍의 필요성과 파이썬 언어의 강점을, 제2장에서는 데이터의 유형과 이를 효율적으로 다루기 위한 파이썬 기본 문법을 소개한다. 제3장과 제4장은 파이썬을 이용한 데이터 수집 방법 중 웹 스크랩핑 기법과 API를 통한 데이터 추출 방법을 설명한다. 나아가 제5장은 데이터 가운데서도 한글 문서 분석에 초점을 맞춰 워드클라우드, 의미망 분석 등 추출한 데이터를 분석하는 방법을 소개하고 있다.

엄기홍
연세대학교 정치학사 및 정치학 석사
University of Kentucky 정치학 박사
Harvard-Yenching Institute, Visiting Scholar
University of California at Berkeley, Fulbright Scholar
현) 경북대학교 정치외교학과 교수
현) 경북대학교 사회과학기초자료연구소 소장
현) 중앙선거관리위원회 자문위원회 자문위원
현) 대구광역시 정보화추진위원회 자문위원
<주요 논문>
「Democratization Effects of Campaign Contribution Limits in Gubernatorial Elections」 (공저)
「Generation Effects, To Be or Not To Be: Empirical Analyses of Korean National Assembly and Presidential Elections」 (공저)
「Contribution Limits and Disparity in Contributions between Gubernatorial Candidates」 (공저)
「노무현 대통령의 자주국방 인식: 노무현 대통령 연설문집 분석을 중심으로」 (공저)
「한국 국회의원은 부패했는가?: 제19대 국회의원 재산자료를 통해 본 경험적 연구」
「고액 정치후원금의 정치적 대표성: 대통령선거 경선, 국회의원선거, 광역단체장선거 후보자 후원회에 관한 경험적 분석」
「한국 후원회의 정치자금 기부금 결정요인: 2004-2006년 기부금액에 대한 경험적 분석」 외 다수
<주요 저서>
『정치학 연구방법론으로의 초대: Stata로 따라하기』
『권위주의 체제, 선거 그리고 민주주의: 제5공화국의 선거들』
『한국 국회와 정치과정』 (공저)
『투표행태의 이해』 (공저) 외 다수

제1장-정치학과 파이썬
제1절 | 컴퓨터 프로그래밍에서 파이썬이란?
제2절 | 파이썬 설치
제3절 | 파이썬 편집기 설치
제4절 | 본 서의 구성
제2장-파이썬 기본 문법
제1절 | 변수
제2절 | 데이터 형태
1. 문자형 데이터
2. 숫자형 데이터
3. 리스트
4. 튜플
5. 집합
6. 사전형 자료
제3절 | 제어문
1. 조건문
2. 반복문
제4절 | 프로그램의 구조
1. 함수
2. 클래스
3. 모듈
4. 패키지
5. 예외 처리
제3장-웹 스크랩핑을 통한 데이터 수집
제1절 | 웹 페이지 데이터 가져오기
1. 웹의 작동원리
2. 데이터 요청 패키지
제2절 | 웹 페이지 분석 및 데이터 추출
1. 웹 페이지의 기본 구조
2. 웹 페이지 분석 및 추출 기법
제3절 | 대한민국 국회 웹 페이지
부록 3.1 국회의원 현황 페이지 웹 스크랩핑 프로그램
제4장-API를 통한 데이터 수집
제1절 | API와 프로그래밍
제2절 | 네이버 API를 이용한 데이터 추출
제3절 | 트위터 API를 이용한 데이터 추출
제4절 | 통계청 API를 이용한 데이터 추출
부록 4.1 네이버 API를 통한 신문기사 데이터 추출
부록 4.2 tweepy를 통한 트위터 데이터 추출
제5장-빅데이터 시각화와 분석
제1절 | 한글 형태소 분석
제2절 | 워드클라우드 시각화
제3절 | 의미망 분석
1. 의미망 분석이란?
2. NetworkX 기본 문법
3. NetworkX를 활용한 의미망 분석: 제19대 대통령 선거 분석
부록 5.1 NetworkX 기본 예제
부록 5.2 TwitterSearch 프로그램
부록 5.3 Facebook Posts 프로그램
부록 5.4 Facebook Comments 프로그램