명사를 추출하여 n-gram으로 토큰화합니다.

tokenize_noun_ngrams(
  x,
  n = 2L,
  n_min = n,
  stopwords = character(),
  ngram_delim = " ",
  simplify = FALSE,
  type = c("noun", "noun2"),
  user_dic = NULL,
  mc.cores = parallel::detectCores()
)

Arguments

x

character. 토큰화할 문자열 벡터

n

integer. n-gram의 단어 수입니다. 1 이상의 정수. 기본값은 2.

n_min

integer. 이것은 1보다 크거나 같고 n보다 작거나 같은 정수여야 함

stopwords

character. n-그램에서 제외할 불용어의 문자형 벡터

ngram_delim

character. 생성된 n-gram에서 단어 사이의 구분 기호

simplify

logical. 기본값은 FALSE로 입력 길이에 관계없이 일관된 값이 반환되도록 list 객체로 반환. TRUE인 경우 x가 단일 값일경우에는 문자 벡터를 반환

mc.cores

integer. 병렬 작업 수행 시 사용할 코어의 개수

Value

토큰화된 character 벡터를 성분으로 갖는 list. simplify값이 TRUE이고 x가 단일값일 때에는 character 벡터

Details

MS-Windows에서는 병렬처리를 지원하지 않음 CPU 자원으로 1개의 core만 지원하는 무료 RStudio Cloud 환경에서는 mc.cores의 값을 1로 설정해야 합니다. 만약 이 설정을 누락하면 에러가 발생합니다. MS-Windows 환경에서는 mc.cores의 값을 1로 설정하지 않아도 정상적으로 동작합니다.

Examples

# \donttest{
tokenize_noun_ngrams(president_speech$doc[1:2])
#> [[1]]
#>   [1] "우정 해"       "해 개막식"     "개막식 축하"   "축하 행사"    
#>   [5] "행사 축하"     "축하 참석"     "참석 모두"     "모두 환영"    
#>   [9] "환영 감사"     "감사 인사"     "인사 전"       "전 이웃"      
#>  [13] "이웃 옛날"     "옛날 이웃"     "이웃 이웃"     "이웃 사정"    
#>  [17] "사정 통신사"   "통신사 절"     "절 시절"       "시절 연락선"  
#>  [21] "연락선 시대"   "시대 항공기"   "항공기 하루"   "하루 안"      
#>  [25] "안 시대"       "시대 교통"     "교통 발달"     "발달 통신"    
#>  [29] "통신 관계"     "관계 경제"     "경제 교류"     "교류 말"      
#>  [33] "말 협력"       "협력 국음"     "국음 마음"     "마음 실행"    
#>  [37] "실행 가공"     "가공 과학"     "과학 기술"     "기술 옛날"    
#>  [41] "옛날 사이"     "사이 불편"     "불편 문제"     "문제 생각"    
#>  [45] "생각 상황"     "상황 양국"     "양국 관계"     "관계 불편"    
#>  [49] "불편 생존"     "생존 자체"     "자체 위협"     "위협 사이"    
#>  [53] "사이 유감"     "유감 친구"     "친구 방법"     "방법 관계"    
#>  [57] "관계 숙명"     "숙명 친구"     "친구 관계"     "관계 친구"    
#>  [61] "친구 친구"     "친구 미래"     "미래 적극"     "적극 친구"    
#>  [65] "친구 손"       "손 불행"       "불행 평화"     "평화 번영"    
#>  [69] "번영 미래"     "미래 관계"     "관계 자리"     "자리 양국"    
#>  [73] "양국 관계"     "관계 도로"     "도로 표현"     "표현 전"      
#>  [77] "전 경제"       "경제 도로는"   "도로는 고속도" "고속도 수준"  
#>  [81] "수준 정치"     "정치 안보"     "안보 측면"     "측면 협력"    
#>  [85] "협력 도로"     "도로 개통"     "개통 문화"     "문화 도로"    
#>  [89] "도로 길"       "길 길"         "길 위"         "위 장애물"    
#>  [93] "장애물 양국"   "양국 협력"     "협력 관계"     "관계 고속"    
#>  [97] "고속 도로"     "도로 장애물"   "장애물 직시"   "직시 양국"    
#> [101] "양국 정부"     "정부 국민"     "국민 적극"     "적극 노력"    
#> [105] "노력 가슴"     "가슴 우정"     "우정 불"       "불 자리"      
#> [109] "자리 우정"     "우정 불"       "불 양국"       "양국 국민"    
#> [113] "국민 사이"     "사이 우정"     "우정 계기"     "계기 이틀"    
#> [117] "이틀 전"       "전 주최"       "주최 행사"     "행사 성공"    
#> [121] "성공 성원"     "성원 참석"     "참석 격려"     "격려 총리"    
#> [125] "총리 국민"     "국민 자리"     "자리 감사"     "감사 올해"    
#> [129] "올해 양국"     "양국 수교"     "수교 해"       "해 일"        
#> [133] "일 양국"       "양국 우정"     "우정 성공"     "성공 때"      
#> [137] "때 보람"       "보람 생각"     "생각 올해"     "올해 이전"    
#> [141] "이전 양국"     "양국 국민"     "국민 교류"     "교류 국민"    
#> [145] "국민 교류"     "교류 해"       "해 감사"      
#> 
#> [[2]]
#>  [1] "각하 국민"   "국민 신년"   "신년 인사"   "인사 새해"   "새해 축복"  
#>  [6] "축복 해"     "해 기원"     "기원 올해"   "올해 양국"   "양국 관계"  
#> [11] "관계 발전"   "발전 전기"   "전기 중"     "중 교류"     "교류 해"    
#> [16] "해 경제"     "경제 학술"   "학술 문화"   "문화 체육"   "체육 청소년"
#> [21] "청소년 분야" "분야 행사"   "행사 본격"   "본격 국민"   "국민 교류"  
#> [26] "교류 협력"   "협력 시대"   "시대 나라"   "나라 교역"   "교역 상대국"
#> [31] "상대국 투자" "투자 대상"   "대상 국"     "국 한국인"   "한국인 방문"
#> [36] "방문 서로"   "서로 문화"   "문화 이웃"   "이웃 양국"   "양국 우호"  
#> [41] "우호 협력"   "협력 올해"   "올해 교류"   "교류 행사"   "행사 강화"  
#> [46] "강화 각하"   "각하 합의"   "합의 전면"   "전면 협력"   "협력 동반자"
#> [51] "동반자 관계" "관계 심화"   "심화 평화"   "평화 공동"   "공동 번영"  
#> [56] "번영 미래"   "미래 기대"   "기대 각하"   "각하 건강"   "건강 무궁"  
#> [61] "무궁 발전"   "발전 기원"  
#> 

# simplify = TRUE
tokenize_noun_ngrams(president_speech$doc[1], simplify = TRUE)
#>   [1] "우정 해"       "해 개막식"     "개막식 축하"   "축하 행사"    
#>   [5] "행사 축하"     "축하 참석"     "참석 모두"     "모두 환영"    
#>   [9] "환영 감사"     "감사 인사"     "인사 전"       "전 이웃"      
#>  [13] "이웃 옛날"     "옛날 이웃"     "이웃 이웃"     "이웃 사정"    
#>  [17] "사정 통신사"   "통신사 절"     "절 시절"       "시절 연락선"  
#>  [21] "연락선 시대"   "시대 항공기"   "항공기 하루"   "하루 안"      
#>  [25] "안 시대"       "시대 교통"     "교통 발달"     "발달 통신"    
#>  [29] "통신 관계"     "관계 경제"     "경제 교류"     "교류 말"      
#>  [33] "말 협력"       "협력 국음"     "국음 마음"     "마음 실행"    
#>  [37] "실행 가공"     "가공 과학"     "과학 기술"     "기술 옛날"    
#>  [41] "옛날 사이"     "사이 불편"     "불편 문제"     "문제 생각"    
#>  [45] "생각 상황"     "상황 양국"     "양국 관계"     "관계 불편"    
#>  [49] "불편 생존"     "생존 자체"     "자체 위협"     "위협 사이"    
#>  [53] "사이 유감"     "유감 친구"     "친구 방법"     "방법 관계"    
#>  [57] "관계 숙명"     "숙명 친구"     "친구 관계"     "관계 친구"    
#>  [61] "친구 친구"     "친구 미래"     "미래 적극"     "적극 친구"    
#>  [65] "친구 손"       "손 불행"       "불행 평화"     "평화 번영"    
#>  [69] "번영 미래"     "미래 관계"     "관계 자리"     "자리 양국"    
#>  [73] "양국 관계"     "관계 도로"     "도로 표현"     "표현 전"      
#>  [77] "전 경제"       "경제 도로는"   "도로는 고속도" "고속도 수준"  
#>  [81] "수준 정치"     "정치 안보"     "안보 측면"     "측면 협력"    
#>  [85] "협력 도로"     "도로 개통"     "개통 문화"     "문화 도로"    
#>  [89] "도로 길"       "길 길"         "길 위"         "위 장애물"    
#>  [93] "장애물 양국"   "양국 협력"     "협력 관계"     "관계 고속"    
#>  [97] "고속 도로"     "도로 장애물"   "장애물 직시"   "직시 양국"    
#> [101] "양국 정부"     "정부 국민"     "국민 적극"     "적극 노력"    
#> [105] "노력 가슴"     "가슴 우정"     "우정 불"       "불 자리"      
#> [109] "자리 우정"     "우정 불"       "불 양국"       "양국 국민"    
#> [113] "국민 사이"     "사이 우정"     "우정 계기"     "계기 이틀"    
#> [117] "이틀 전"       "전 주최"       "주최 행사"     "행사 성공"    
#> [121] "성공 성원"     "성원 참석"     "참석 격려"     "격려 총리"    
#> [125] "총리 국민"     "국민 자리"     "자리 감사"     "감사 올해"    
#> [129] "올해 양국"     "양국 수교"     "수교 해"       "해 일"        
#> [133] "일 양국"       "양국 우정"     "우정 성공"     "성공 때"      
#> [137] "때 보람"       "보람 생각"     "생각 올해"     "올해 이전"    
#> [141] "이전 양국"     "양국 국민"     "국민 교류"     "교류 국민"    
#> [145] "국민 교류"     "교류 해"       "해 감사"      

str <- "신혼부부나 주말부부는 놀이공원 자유이용권을 즐겨 구매합니다."

tokenize_noun_ngrams(str)
#> [[1]]
#> [1] "신혼 부부" "부부 주말" "주말 부부" "부부 놀이" "놀이 공원" "공원 자유"
#> [7] "자유 이용" "이용 구매"
#> 

# 불용어 처리
tokenize_noun_ngrams(str, stopwords = "구매")
#> [[1]]
#> [1] "신혼 부부" "부부 주말" "주말 부부" "부부 놀이" "놀이 공원" "공원 자유"
#> [7] "자유 이용"
#> 
 
# 사용자 정의 사전 사용
dic_path <- system.file("dic", package = "bitNLP")
dic_file <- glue::glue("{dic_path}/buzz_dic.dic")
tokenize_noun_ngrams(str, simplify = TRUE, user_dic = dic_file)
#> [1] "신혼부부 주말부부" "주말부부 놀이"     "놀이 공원"        
#> [4] "공원 자유이용권"   "자유이용권 구매"  

# n_min
tokenize_noun_ngrams(str, n_min = 1, user_dic = dic_file)
#> [[1]]
#>  [1] "신혼부부"          "신혼부부 주말부부" "주말부부"         
#>  [4] "주말부부 놀이"     "놀이"              "놀이 공원"        
#>  [7] "공원"              "공원 자유이용권"   "자유이용권"       
#> [10] "자유이용권 구매"   "구매"             
#> 

# ngram_delim
tokenize_noun_ngrams(str, ngram_delim = ":", user_dic = dic_file)
#> [[1]]
#> [1] "신혼부부:주말부부" "주말부부:놀이"     "놀이:공원"        
#> [4] "공원:자유이용권"   "자유이용권:구매"  
#> 
# }