사용자 명사 사전에 등록하기 위해 인명/지명을 인명/지명/고유명사/일반명사 사전 파일에 추가

append_userdic_meta(
  term,
  type = NULL,
  prototype = NULL,
  noun_type = c("person", "place", "nnp", "nng"),
  dic_type = c("sysdic", "userdic"),
  userdic_path = NULL
)

Arguments

term

character. mecab-ko 사전에 등록할 이름들. mecab-ko-dic 품사 태그 설명에서 '표층형', '읽기'에 적용됨

type

character. mecab-ko 사전에 등록할 타입들. mecab-ko-dic 품사 태그 설명에서 '타입'에 적용됨.

prototype

character. mecab-ko 사전에 등록할 원형들. mecab-ko-dic 품사 태그 설명에서 '표현'에 적용됨.

noun_type

character. 인명사전과 지명사전, 고유명사, 일반명사 사전에서 등록할 사용자 정의 명사 사전 선택.

dic_type

character. 생성할 사용자 정의 사전을 시스템사전에 빌드할 지, 사용자 사전으로 빌드할 지의 선택. 기본값은 "sysdic"으로 시스템사전에 빌드할 목적으로 작업함.

userdic_path

character. 사용자 정의 명사 사전 파일이 존재하는 경로. 지정하지 않으면 사전이 설치된 기본 경로에서 파일을 읽어온다.

Details

사용자 사전정의 디렉토리의 person.csv/place.csv/nnp.csv/nng.csv 파일에 등록할 인명/지명/고유명사/일반명사를 추가한다. mecab-ko-dic 품사 태그 설명에서 '타입'은 두 개 이상의 토큰으로 구성된 복합명사일 때만 사용하며, 'Compound', 'Preanalysis', 'Inflected' 중에 하나를 기술하는데 의미는 다음과 같음.:

  • Compound : 가장 흔한 사례의 복합명사로 개별 토큰의 의미가 합쳐져서도 의미가 유지되는 사례

    • 예) 주말부부: 주말/NNG + 부부/NNG

  • Preanalysis : 개별 토큰의 의미가 합쳐지면서 의미가 상실되는 사례

    • 예) 인터파크: 인터/NNG + 파크/NNG

  • Inflected : 토큰이 합쳐질 때, 개별 토큰에 변형이 일어나는 경우로 복합명사에서는 거의 발생하지 않음

References

mecab-ko-dic 품사 태그 설명. <https://docs.google.com/spreadsheets/d/1-9blXKjtjeKZqsf4NzHeYJCrr49-nXeRF6D80udfcwY/edit#gid=1718487366>

Examples

if (FALSE) {
# 인명 사전
get_userdic_meta()
append_userdic_meta(c("변학도"))

# 지명 사전
get_userdic_meta("place")
append_userdic_meta(c("영귀미면"), noun_type = "place")
get_userdic_meta("place")

# 고유명사 사전  
get_userdic_meta("nnp")
append_userdic_meta(c("릴리움", "인터파크"), c("*", "Preanalysis"), 
                    c("*", "인터/NNG/*+파크/NNG/*"), noun_type = "nnp")
get_userdic_meta("nnp")

# 일반명사 사전을 사용자 사전에 빌드할 목적으로 등록함  
get_userdic_meta("nng", dic_type = "userdic")
append_userdic_meta(c("주말부부", "쿼토"), c("Compound", "*"), 
                    c("주말/NNG/*+부부/NNG/*", "*"), 
                    noun_type = "nng",
                    dic_type = "userdic")
get_userdic_meta("nng")
}