Python/R
R함수 basic006 : 문장을 벡터로 변환하기 ,벡터(vector) 를 코퍼스(말뭉치)에 넣기 , 코퍼스(말뭉치)로 바이그램, 트라이그램 추출하기 ,dtm,tdm 만들기
sucun
2020. 6. 4. 14:34
# install.packages("installr")
# install.packages('RmecabKo') # C++ 기반으로 함,
# install.packages("ggplot2")
# install.packages("readxl")
# install.packages("dplyr")
# install.packages("rJava")
# install.packages("tm")
install.packages("RWeka")
## testData is mpg
library(installr)
library(ggplot2) # mpg
library(readxl)
library(dplyr)
library(rJava)
library(tm)
library(stringr)
library(RWeka)
## R함수 basic006 : 문장을 벡터로 변환하기 ,벡터(vector) 를 코퍼스(말뭉치)에 넣기 , 코퍼스(말뭉치)로 바이그램, 트라이그램 추출하기
tests <- "The United States comprises fifty states. In the United States, each state has its own laws. However, federal law overrides state law in the United States."
bigramTokenizer <- function(x) NGramTokenizer(x,Weka_control(min=2, max=3)) # 바이그램 =2, 트라이그램 =3 (min=2 or min = 3)
mytext <- c("The United States comprises fifty states.","In the United States, each state has its own laws.","federal law overrides state law in the United States.")
typeof(mytext)
mytemp <- VCorpus(VectorSource(mytext)) # 말뭉치 만들기 , 코퍼스에 문장 벡터 3개 넣기
ngram.tdm <- TermDocumentMatrix(mytemp,control = list(tokenize=bigramTokenizer)) # tdm 구성하기
bigramlist <- apply(ngram.tdm[,],1,sum)
sort(bigramlist, decreasing = T)[1:10] # 빈도수가 높은 바이그램부터 살피기
# ---------------------------
# 말뭉치를 dtm 으로 구성하기 , DocumentTermMatrix()
# dtm.e <- DocumentTermMatrix(mytemp) # dtm 으로 구성하기
# dtm.e$dimnames
반응형