본문 바로가기
파이썬

파이썬 Stopword removal with NLTK

by º기록 2021. 1. 5.
반응형

nltk 툴킷을 사용하여 불용어를 제거하여 사용자가 입력 한 텍스트를 처리하려고하지만 불용어 제거를 사용하면 'and', 'or', 'not'과 같은 단어가 제거됩니다. 이 단어는 나중에 텍스트를 쿼리로 처리하는 데 필요한 연산자이므로 불용어 제거 프로세스 후에 존재하기를 원합니다. 텍스트 쿼리에서 연산자가 될 수있는 단어가 무엇인지 모르겠고 텍스트에서 불필요한 단어를 제거하고 싶습니다.

 

해결 방법

 

불용어 목록에서 제거하는 연산자 단어 목록을 직접 만드는 것이 좋습니다. 세트는 편리하게 뺄 수 있습니다.

operators = set(('and', 'or', 'not'))
stop = set(stopwords...) - operators

그런 다음 연산자가 불용어 목록의 일부인지 여부에 의존하지 않고 단어가 집합에 내부 인지 인지 간단히 테스트 할 수 있습니다. 그런 다음 나중에 다른 불용어 목록으로 전환하거나 연산자를 추가 할 수 있습니다.

if word.lower() not in stop:
    # use word

 

참조 페이지 https://stackoverflow.com/questions/19130512

 

 

반응형

댓글