반응형
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
반응형
'파이썬' 카테고리의 다른 글
파이썬 vim and python scripts debugging (0) | 2021.01.05 |
---|---|
파이썬 Python의 argparse에서 metavar 및 action은 무엇을 의미합니까? (0) | 2021.01.05 |
파이썬 문자열의 첫 번째 점까지 모든 것을 가져 오는 Python 정규식 (0) | 2021.01.05 |
파이썬 전역 변수가 왜 나쁜가요? (0) | 2021.01.05 |
파이썬 Windows 8에 netCDF4를 설치하려고 할 때 "Python 버전 2.7 필요, 레지스트리에 없음"오류 발생 (0) | 2021.01.05 |
댓글