지방이의 Data Science Lab

[python] nlp 자연어 처리 3 (불용어 처리를 위한 공통 단어 뽑기) 본문

Data Analysis/Natural language processing

[python] nlp 자연어 처리 3 (불용어 처리를 위한 공통 단어 뽑기)

[지현] 2019. 12. 6. 18:41

https://jlim0316.tistory.com/97

앞서 만들었던 vocab에서 스팸인 문자와 아닌문자 중 공통으로 들어가는 단어가 존재할 것이다. 

예를들어, '하다'라는 단어가 있다고 치자. 

스팸인 문자에서는 '하다'가 1번 나왔고 스팸아닌 문자에선 '하다'가 100번 나왔다고 생각해보자.

common단어라 보기 어렵다. 스팸아닌데서만 하다가 나오는 경우가 훨씬 많기 때문에. 

 

이런경우 min값을 출력하되 정렬을 큰 숫자부터 보고 75% 퀀타일로 잘라서 불용어로 보겠다. 

max값을 출력하되 정렬을 작은 숫자부터 정렬시키고 25% 퀀타일로 잘라서 불용어 처리 하겠다.

 

나온 결과는 다음과 같다:

 

 


common = [min_common,max_common]
common = sum(common, [])
common = list(set(common))

with open('stopwords.txt', 'w') as file:
    file.writelines('%s\n' % s for s in common) 

 

이렇게 하면 ? 불용어리스트 완성 !

Comments