Presentation is loading. Please wait.

Presentation is loading. Please wait.

텍스트마이닝 실습 (R 이용).

Similar presentations


Presentation on theme: "텍스트마이닝 실습 (R 이용)."— Presentation transcript:

1 텍스트마이닝 실습 (R 이용)

2 1. 분석개요 텍스트마이닝의 이해 실습 문제 분석기법 의미 문제정의 사용시 고려사항 적용방안
텍스트 기반 데이터에서 의미 있는 정보는 무엇인가? 다양한 포맷의 문서들을 구조적인 형태로 재구성하여 문서의 분류 및 군집, 추출, 요약을 수행함 문제정의 연말정산에 대해 일반국민들이 궁금해 하는 사항은 무엇일까? 사용시 고려사항 해당 언어자체 및 문화·관습에 대한 깊이 있는 이해가 필요함 문화와 관습의 차이가 텍스트 데이터에 반영되므로 국가별로 다른 접근방식 필요 한 언어에서 좋은 결과를 보였던 분석기법이 다른 언어에서도 좋은 결과를 보인다는 보장이 없음 적용방안 국민들이 느끼고 있는 연말정산에 대한 어려운 부분을 파악하여 쉽게 이해하고 진행할 수 있도록 함 콜센터, 홈페이지FAQ, 안내책자 등에 분석된 항목을 집중적으로 다루도록 함

3 2. 실습데이터 및 패키지 준비 "C:/Rtest"라는 폴더에 "tax.txt" 실습파일 준비  메모장에서 작성·저장시 파일 확장자를 .txt로 함 Rstudio에서 사용할 작업폴더의 경로를 다음과 같이 세팅함 > setwd("c:/Rtest") 한글에 대한 텍스트마이팅 패키지인 KoNLP 및 워드클라우드를 만드는 wordcloud라는 패키지, 워드클라우드 단어들에 색상을 입히는 RColorBrewer를 설치하고, 메모리에 업로드 함 - KoNLP패키지는 자바실행환경(JRE: Java Runtime Environment) 을 설치해 주어야 함) > install.packages("KoNLP") > install.packages("RColorBrewer") > install.packages("wordcloud") > library(KoNLP) > library(RColorBrewer) > library(wordcloud)

4 3. 실습데이터 읽기 및 텍스트 분석 > result <- file("tax.txt", encoding="UTF-8") > result2 <- readLines(result) > head(result2, 3) > result3 <- sapply(result2, extractNoun, USE.NAMES=F) > head(unlist(result3), 20) > write(unlist(result3), "tax_word.txt") 추출된 명사들이 result3 객체라는 메모리에 보관되어 있으므로 이후 활용을 위해서 실제 파일로 저장을 해 놓음 Tax.csv 파일에 들어 있는 내용을 result라는 객체에 불러옴 - 이어서 result객체에 들어 있는 내용을 한 줄씩 행단위로 별도로 읽어서 result2에 보관함 result2에 행단위로 보관되어 있는 문장들에서 명사형 단어를 추출해서 result3라는 객체에 보관함 - 이어서 result3에 들어 있는 단어들 중에서 개 정도를 출력해 봄

5 4. 텍스트마이닝 분석 ① ② > myword <- read.table("tax_word.txt")
> nrow(myword) > wordcount <- table(myword) > head(sort(wordcount, decreasing=T), 20) tax_word.txt 파일에 들어 있는 내용을 데이터테이블 형태로 만들어 myword라는 객체에 불러옴 - 이어서 myword의 행(레코드) 개수를 확인해 봄 myword에 들어 있는 단어들을 빈도수를 각각 구하여 wordcount에 저장함 - wordcount에 들어 있는 단어별 빈도수를 기준으로 내림차순으로 순차정렬을 시키고 빈도수가 높은 단어부터 20개를 조회해 봄

6 5. 텍스트마이닝 분석 ① ② ④ ③ > palete <- brewer.pal(9, "Set1")
> x11( ) > wordcloud( names(wordcount), freq=wordcount, scale=c(5, 1), rot.per=0.5, min.freq=4, random.order=F, random.color=T, colors=palete ) 워드클라우드를 만드는 기능을 가진 wordcloud 패키지의 또다른 세부 기능을 가진 RColorBrewer를 메모리에 업로드 시킴 - 워드클라우드 작성시 이를 구성하는 단어들마다의 색상을 부여해줌 워드클라우드 형식의 그림데이터를 표현하기 위한 별도의 그래픽구현 창을 생성함 Wordcloud함수의 세부 인수(옵션) 값을 조정하여 워드클라우드에서 중요키워드를 파악함 - scale이 출력되는 단어들간의 크기 비율임 - rot.per는 단어들간의 간격을 조절함 - min.freq는 단어의 언급횟수를 의미함 원래는 아래의 기다란 형태의 한 줄로 코딩이 되어야 하지만 작성화면이 상당히 복잡하고 불편함 - 이에 따라 wordcloud( )라는 함수의 인수들을 작성하다 적당한 부근에서 Shift + Enter키를 누르면 그 다음 줄에 (+)기호가 생성되고 들여쓰기 형태로 코딩을 하게 됨 - 이를 표현하는 것이 바로 플러스기호(+)로 각각의 줄이 하나의 개별적인 R명령코딩이 아니라 원래 한 줄로 구성되어 있는 코딩이라는 의미임 wordcloud(names(wordcount), freq=wordcount,scale=c(5, 1),rot.per=0.5,min.freq=4,random.order=F,random.color=T,colors=palete)

7 6. 워크클라우드를 통한 시각화 최초 작성된 워드클라우드 - 것, 저, 원 등이 중요하지 않음 수정된 워드클라우드
최초 작성된 워드클라우드 - 것, 저, 원 등이 중요하지 않음 수정된 워드클라우드 > result2 <- gsub("것", "", result2) > result2 <- gsub("저", "", result2) > result2 <- gsub("원", "", result2) 최초 작성된 워드클라우드에서 파악된 비중요 단어들을 제거함


Download ppt "텍스트마이닝 실습 (R 이용)."

Similar presentations


Ads by Google