1 문재인 대통령 신년기자회견 1 2

2019 문재인 대통령 신년기자회견 연설문을 웹사이트에서 다운로드받아 연설문 텍스트에서 핵심단어를 추출하고 가장 많이 사용된 단어를 확인하고 이를 ggpage 팩키지를 활용하여 시각화하자.

1.1 연설문 데이터

2019 문재인 대통령 신년기자회견 연설문 웹사이트에서 rvest로 연설문만 뽑아내고 기본적인 전처리 작업만한다. ggplot으로 시각화하는데 데이터프레임 변환시키고 빈도수가 많은 단어를 공백기준으로 나눠 빈도수를 산출한다.

# A tibble: 1,425 x 2
   word         n
   <chr>    <int>
 1 것입니다    28
 2 수          17
 3 있습니다    14
 4 함께        14
 5 3           13
 6 등          11
 7 만          11
 8 우리        11
 9 우리는      11
10 국민        10
# ... with 1,415 more rows

2 한걸음 더 들어갑니다.

앞서 띄어쓰기 기준이 아닌 한국어 고유의 형태소 분석 후 의미있는 단어만 분석할 수 있도록 NLP4kec 팩키지를 활용하여 자연어 처리 분석에 한걸음 더 들어갑니다. NLP4kec_1.2.0.zip 파일크기가 1.2GB라서 놀라지 마세요!!!

# A tibble: 833 x 2
   word      n
   <chr> <int>
 1 것       43
 2 있다     41
 3 경제     35
 4 우리     32
 5 성장     29
 6 국민     24
 7 하다     23
 8 않다     21
 9 혁신     21
10 되다     19
# ... with 823 more rows

사용자 정의 사전(dictionary.txt)

“포용성장”과 같은 단어를 그대로 두게 되면 “포용”과 “성장” 나눠지게 된다. 이런 문제를 사용자 정의 사전(dictionary.txt)에 기록하여 의미가 남도록 추가 작업을 한다.

# A tibble: 2 x 2
  word      n
  <chr> <int>
1 국가     18
2 포용      9

3 tidytext 불용어 처리

먼저 “포용국가” 등을 반영하기 위해서 korDicPath를 설정하고 형태소 분석에 들어간다. 그리고 나서 데이터프레임으로 변환작업을 하고 자체 불용어 사전 tidyverse를 제작하여 기존 stop_words 사전에 결합시킨다. 연설문에 많이 나오는 불용어(stopwords)를 처리하기 위해서 tidytext 불용어 사전과 anti_join()을 걸어 최종 형태소분석이 깔끔히 완료된 텍스트 데이터를 준비한다.

3.1 tidytext 연설문 시각화

앞서 형태소 분석 결과를 바탕으로 연설전문에 포용, 경제, 북한, 성장, 혁신 등을 주제로 하여 연설문에 표식을 한다.

사용자 정의 사전(dictionary.txt)

“포용국가”과 같은 단어를 그대로 두게 되면 “포용”과 “국가” 나눠지게 된다. 이런 문제를 사용자 정의 사전(dictionary.txt)에 기록하여 의미가 남도록 추가 작업을 한다.

# A tibble: 3 x 2
  word         n
  <chr>    <int>
1 국가        11
2 포용국가     7
3 포용         2