Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

Alchemist

[R studio - 6 ] 텍스트 마이닝 본문

R-coding

[R studio - 6 ] 텍스트 마이닝

Alchemist__ 2019. 5. 27. 23:52

텍스트 마이닝(Text mining) : 문자로 된 데이터에서 가치 있는 정보를 얻어 내는 분석 기법

텍스트 마이닝을 하기 위해서는 문장을 구성하는 어절들이 어떤 품사로 되어있는지 파악하는 "형태소 분석"을 해야한다.

한글 자연어 분석 패키지인 KoNLP를 이용하면 한글 데이터로 형태소 분석을 할 수 있다.

 

#1. 패키지 준비하기

KoLNP(한글 자연어 분석 패키지)를 이용하려면 자바(Java)가 설치되어 있어야 한다.

또한 KoLNP를 이용하려면 rJava , memorise 두가지 패키지도 필요하다.

자바를 설치한 후 install.packages() 명령어를 이용해 rJava , memorise, KoLNP 세 패키지를 설치하도록 하자.

(KoNLP 설치 중 오류 발생시 Sys.setenv(JAVA_HOME='C:\\Program Files\\Java\\jre1.8.0_211') 와 같이 자바 설치 경로를 입력해주면 된다.

이후 KOLNP와 dplyr 라이브러리를 불러온다.

#2. 사전 준비하기

KoLNP에서 지원하는 NIA 사전은 98만여개의 단어로 구성되어 있다. 이를 사용해 형태소 분석을 하도록 하겠다.

useNIDic()

#3. 데이터 불러오기

readLines()명령어를 통해 데이터를 txt에 저장시켰다.

 

 

#4. 특수문자 제거하기

stringr() 패키지를 설치해 str_replace_all() 함수로 특수문자를 빈칸으로 수정한다.

 

#5. 명사 추출하기

KoNLP의 extractNoun() 함수를 이용해 문장에서 명사를 추출한다.

빈도표는 table 형식이므로 다루기 쉽도록 데이터 프레임으로 변환하고 변수명을 수정하겠다.

 

#6. 자주 사용된 단어 빈도표 만들기

df_word <- filter(df_word, nchar(word) >=2)를 이용, 두글자 이상만 추출한다.

빈도 순으로 정렬한 후 상위 20개 단어를 추출한다.

 

#7. 워드 클라우드 만들기

wordcloud 패키지를 이용해 워드 클라우드를 만들 수 있다.

패키지를 설치하고, wordcloud , RColorBrewer 패키지를 로드합니다.

+brewer.pal()을 이용해 단어의 색을 지정할때 사용할 색상 코드를 만듭니다.

항상 동일한 워드 클라우드가 생성되도록 set.seed()로 난수를 고정합니다.

 

 

순서대로 단어,빈도,최소 단어 빈도,표현 단어 수, 고빈도 단어 중앙 배치,회전 단어 비율, 단어 크기 범위, 색상 목록이다.

 

완성

 

영우, 『쉽게 배우는 R 데이터 분석』, 이지스 퍼블리싱, 2019