text mining token화 함수

2023. 11. 6. 06:49논문통계분석/jjstat package

데이터를 토큰화하는 함수 

#의미단위 토큰화 함수--------
# 주어진 데이터를 unnest_tokens를 이용하여 토큰화 하고 count는 빈도분석을 완료 
# token의 경우는 토큰화만 실시하여 출력 
Token_gen <- function(data, 
                      show="count",
                      col1="year",
                      col2="text"){
  library(tidyverse)
  library(tidytext)
  
  data1 <- data
  colnames(data1)= c(col1, col2)
  
  data_token <- data1 %>%
    unnest_tokens(word,text) %>%
    # count(word, sort = T) %>%
    filter(str_length(word)>=2)
  
  data2 <- data1 %>%
    unnest_tokens(word,text) %>%
    count(word, sort = T) %>%
    filter(str_length(word)>=2)

  if(show =="all"){  
 res=list(data2, data_token)
  }else if(show =="count"){
   res= data2
  }else if(show =="token"){
   res = data_token
 }
  res
}

단어프레임에서 데이터의 이름을 변경하는 함수 

#데이터 속의 단어변경하기-----
# 조사들이 결합된 단어는 변경하여 정리 
change_word<- function(data,
                       findword="", 
                       change="",
                       col=1){
 
  data[data[,col]== findword, col] <- change
  data <- data %>% as_tibble()
   data
}