복붙노트

[PYTHON] scikit-learn CountVectorizer 중지 목록에 단어 추가

PYTHON

scikit-learn CountVectorizer 중지 목록에 단어 추가

Scikit-learn의 CountVectorizer 클래스를 사용하면 stop_words 인수에 'english'문자열을 전달할 수 있습니다. 이 미리 정의 된 목록에 몇 가지를 추가하고 싶습니다. 아무도 이걸하는 방법을 말해 줄 수 있습니까?

해결법

  1. ==============================

    1.sklearn.feature_extraction.text의 소스 코드에 따르면 ENGLISH_STOP_WORDS의 전체 목록 (실제로는 frozenset, stop_words에서)은 __all__을 통해 노출됩니다. 따라서 그 목록과 더 많은 항목을 함께 사용하려면 다음과 같이 할 수 있습니다.

    sklearn.feature_extraction.text의 소스 코드에 따르면 ENGLISH_STOP_WORDS의 전체 목록 (실제로는 frozenset, stop_words에서)은 __all__을 통해 노출됩니다. 따라서 그 목록과 더 많은 항목을 함께 사용하려면 다음과 같이 할 수 있습니다.

    from sklearn.feature_extraction import text 
    
    stop_words = text.ENGLISH_STOP_WORDS.union(my_additional_stop_words)
    

    (여기서 my_additional_stop_words는 문자열의 임의의 시퀀스 임) stop_words 인수로 결과를 사용하십시오. CountVectorizer .__ init__에 대한이 입력은 _check_stop_list에 의해 구문 분석되며, 이는 새로운 frozenset을 곧바로 통과시킵니다.

  2. from https://stackoverflow.com/questions/24386489/adding-words-to-scikit-learns-countvectorizers-stop-list by cc-by-sa and MIT license