https://steadiness-193.tistory.com/144
텍스트 분석 - 네이버 카페(비건 디저트) : 전처리, 형태소 분석(Komoran)
데이터 불러오기 여기서 필요한 것은 content와 reply뿐이다. content content를 문자열로 다 바꾸고 인덱스와 함께 리스트로 저장한다. 여기서 길이가 4 이상이어야 하는데 그 이유는 누락값은 NaN인데 �
steadiness-193.tistory.com
위 포스팅에서 만들어낸 mas 엑셀파일을 불러온다.
엑셀파일에 저장했다가 불러오면 다시 처리해야할 것이 있다.
엑셀로 저장했다가 불러오면
리스트까지 문자열로 보기 때문에
위 처럼 리스트를 ""로 감싸서 str로 나타내고 있다.
따라서 앞의 2글자와 뒤 2글자를 제외하고
박스 표시한 저 문자열로 split을 하면 다시 리스트로 만들 수 있다.
STOP_WORDS
텍스트 분석을 하다보면 크롤링 특성상
필요없는 문자열과 주소 등을 다 가져오기 때문에
해당 단어가 있다면 걸러내는 작업이 필요하다.
분석을 해보면서 소음이라고 판단되는 단어들을 모아둔다.
CHANGE_WORDS_SET
텍스트 분석을 하다보면 의미가 동일한 단어가
여러 표현으로 적힐때가 많다.
또는 작성자마다 글을 쓰는 스타일이 다르기 때문에
이를 최대한 한 단어로 통일시켜주는 것이 좋다.
예를 들면 인스타그램이 인스타, insta, instagram 등으로 다양하게 적히는 것이다.
이를 바꿔주기 위한 이중 리스트를 만들어 둔다.
mas_total
mas_noun 컬럼에서 STOP_WORDS에 해당되지 않고
CHANGE_WORDS_SET을 통과해낸 단어들을 모두 모아
mas_total에 넣어두자
이를 견뎌낸 단어들의 개수는
총 374,541개이다.
Counter
collections 라이브러리를 이용해
각 단어의 개수를 세주는 Counter를 가져와서 이용하자
개수가 상위 50개인 단어들을 뽑아봤다.
이를 시각화하기 위해 2개 컬럼의 데이터프레임을 만들자
위 데이터프레임의 시각화
어떤 단어들이 많이 사용되었는지 빈도수 별로 상위 단어를 파악할 수 있다.
wordcloud
상위 50단어 말고
단어의 개수를 다 찾아낸 mas_counts를 이용해
워드클라우드를 만들어보자
상위 50단어로는 놓칠 수 있었던 중요 단어들도 보인다.