시작하기무료로 시작하기

극성 기반 말뭉치 생성하기

이번 연습 문제에서는 텍스트 마이닝 워크플로우의 3단계를 수행합니다. qdap은 tidy 패키지가 아니지만, 반환된 polarity 리스트에서 전체 극성(all polarity) 점수(힌트입니다!)를 나타내는 새 열을 mutate()로 추가할 것입니다. 3장에서는 기본 R 선언만 사용하는 커스텀 함수 pol_subsections를 사용했습니다. 하지만 이번 연습 문제에서는 tidy 원칙에 따라 filter()를 사용하고, 단일 변수를 추출하는 pull()을 새롭게 소개합니다. pull() 함수는 [[처럼 단일 변수를 추출하는 역할을 합니다.

분리가 완료되면, 긍정 댓글과 부정 댓글을 각각 하나의 큰 문서로 합쳐서 긍정 및 부정 숙소 리뷰에 포함된 모든 단어를 표현합니다.

마지막으로, TFIDF(Term Frequency Inverse Document Frequency) 가중치가 적용된 TDM(Term Document Matrix)을 생성합니다. 이 연습 문제 코드는 tidy 구조에서 시작하므로, 스타일을 일관되게 유지하기 위해 tm 패키지의 일부 함수와 %>% 연산자를 함께 사용합니다. tm 패키지의 기초가 익숙하지 않다면 Text Mining with Bag-of-Words in R 강의를 참고하세요. TDM의 값은 단어 사용 횟수(빈도) 대신, 자주 등장하는 단어에 패널티를 적용하여 정보량이 낮은 단어의 영향을 줄입니다.

이 연습은 강의의 일부입니다

R을 활용한 감성 분석

강의 보기

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

pos_terms <- bos_reviews %>%
  # Add polarity column
  ___(polarity = ___) %>%
  # Filter for positive polarity
  ___(___) %>%
  # Extract comments column
  ___(___) %>% 
  # Paste and collapse
  ___(collapse = "___")
코드 편집 및 실행