1. 학습
  2. /
  3. 강의
  4. /
  5. R을 활용한 감성 분석

Connected

연습 문제

바로 시작해 봐요! 극성 시각화하기

감성 분석(Sentiment Analysis)은 글쓴이가 특정 주제에 대해 어떤 감정을 갖고 있는지 파악하는 데 도움을 줍니다. 이 연습 문제를 통해 앞으로 배울 내용을 미리 맛볼 수 있습니다!

person 열과 text 열로 구성된 대화 데이터 프레임 text_df를 미리 만들어 두었습니다.

qdap의 polarity() 함수를 사용해 text_df에 점수를 매겨 보세요. polarity()는 단일 문자 객체 또는 그룹화 변수가 있는 데이터 프레임을 받아 긍정 또는 부정 점수를 계산합니다.

이 예제에서는 magrittr 패키지의 달러 파이프 연산자 %$%를 사용합니다. 달러 기호는 데이터 프레임을 polarity()로 전달하며, 텍스트 열 이름 또는 텍스트 열과 그룹화 변수를 따옴표 없이 선언합니다.

text_data_frame %$% polarity(text_column_name)

달러 기호 연산자를 사용해 객체를 생성하려면:

polarity_object <- text_data_frame %$% 
  polarity(text_column_name, grouping_column_name)

텍스트의 감성을 정량적으로 판단하려면 점수를 부여해야 합니다. 간단한 방법 중 하나는 문장, 문단, 또는 코퍼스(corpus)라고 불리는 문서 집합에 양수 또는 음수 값을 할당하는 것입니다. 이처럼 긍정과 부정 값만으로 점수를 매기는 방식을 '극성(polarity)'이라고 합니다. 극성 점수를 추출할 때 유용한 함수가 바로 counts()입니다. 이 함수를 극성 객체에 적용하면 됩니다. 빠르게 시각화하고 싶다면 polarity() 결과에 plot()을 호출하세요.

지침

100 XP
  • text_df 대화 데이터 프레임을 살펴보세요.
  • %$%를 사용해 text_df를 polarity()에 전달하고, 열 이름 text를 따옴표 없이 입력하세요. 이렇게 하면 전체 텍스트의 극성이 출력됩니다.
  • text_df를 %$%로 polarity()에 전달하여 새 객체 datacamp_conversation을 만드세요. text와 그룹화 열 person을 순서대로 전달하면 각 사람별 극성이 계산됩니다. 괄호 안에 작성했으므로 결과도 함께 출력됩니다.
  • datacamp_conversation에 counts()를 적용하여 발견된 감정 단어를 출력하세요.
  • datacamp_conversation을 plot()으로 시각화하세요.