8-3. 텍스트마이닝1
1) 텍스트마이닝이란?
텍스트마이닝 (Text mining)
- 텍스트마이닝은 웹페이지, 이메일, 소셜네트워크 기록 등 전자문서 파일로부터 특정 연관성(동시적으로 빈도가 높은 단어추출)을 분석하는 방법
- 텍스트마이닝은 다양한방식의 알고리즘을 이용하여 대용량의 텍스트문서로부터 트렌드와 관심어를 찾아내는 기법으로 사용
2) 텍스트마이닝에 필요한 패키지
- 텍스트마이닝을 위한 패키지
# 자연어처리
install.packages('NLP')
# 텍스트마이닝 패키지
install.packages('tm')
# 텍스트마이닝 결과의 시각화
install.packages('wordcloud')
- 그 외 패키지
#한글처리를 위한 패키지
install.packages("KoNLP")
#트위터의 데이터를 불러오는 패키지
install.packages("twitteR")
# color displaying
install.packages('RColorBrewer')
- 패키지설치와 라이브러리 설정, tm의 예제 데이터 (crude)
data(crude)
help(crude)
tm에 포함된 데이터 crude사용 (원유 데이터)
3) 텍스트마이닝 패키지(tm)의 데이터
- 예제데이터 : crude 데이터 (로이터통신의 20개의 뉴스기사)
crude[[1]] : 첫번째 기사 (아래와 같은 XML파일 형태로 저장) - tm패키지에 들어있는 예제데이터
4) 텍스트마이닝 예제 : Crude(원유)데이터
crude<-tm_map(crude, removePunctuation)
# remove stopwords
crude<-tm_map(crude, removeNumbers)
crude<-tm_map(crude, function(x) removeWords(x,stopwords()))
stopwords()
# from frequency counts
tdm<-TermDocumentMatrix(crude)
m<-as.matrix(tdm)
v<-sort(rowSums(m), decreasing=TRUE)
d<-data.frame(word=names(v), freq=v)
# plot a word cloud
# to see detail help(wordcloud)
par(mfrow=c(1, 1))
wordcloud(d$word, d$freq, random.order=FALSE)
텍스트마이닝 결과 : oil, said, price
- help(wordcloud)
=(default)
5) 텍스트마이닝 : 코퍼스(corpus)
- 코퍼스(corpus, 말뭉치) : 텍스트집합을 의미
(예) 신문기사(html, text), SNS (tweeter, facebook)
- 코퍼스 기반 언어연구, 빅데이터 시대의 언어분석
- Source의 종류
DirSource() : 디렉토리
DataframeSource() : R 데이터프레임
VectorSource() : R 벡터
XMLSource() : XML 파일
URISource() : URI
- 문서포맷과 Reader
readPlain : Plain Text
readPDF : pdf 파일
readDOC : MS word 문서
readXML : XML 문서
'공부 > R & Python' 카테고리의 다른 글
9-1. 데이터 마이닝 기초-데이터마이닝과 예측 (다중회귀분석1) (0) | 2020.02.17 |
---|---|
8-4. 텍스트마이닝2 (0) | 2020.02.17 |
8-2. 회귀분석 (선형모형) (0) | 2020.02.17 |
8-1. 선형 회귀모형과 텍스트 마이닝-상관분석 (0) | 2020.02.17 |
7-4. 이원분산분석 (two-way ANOVA) (0) | 2020.02.16 |