Bing tidy 극성 분석: 간단한 예제
내부 조인(inner join)의 기본 개념을 이해했다면, 이제 이를 "Bing" 어휘 목록에 적용해 보겠습니다. inner_join() 함수는 dplyr에서 제공되며, 어휘 목록 객체는 tidytext의 get_sentiments() 함수로 가져올 수 있다는 점을 기억하세요.
Bing 어휘 목록은 단어를 긍정 또는 부정으로 분류합니다. 다음 세 가지 연습 문제에서 이 어휘 목록을 직접 다뤄볼 수 있습니다. get_sentiments()를 사용할 때는 "afinn", "bing", "nrc", "loughran" 중 원하는 문자열을 전달하여 해당 어휘 목록을 내려받으세요.
내부 조인 워크플로:
get_sentiments()를 사용하여 원하는 어휘 목록을 가져옵니다.- 어휘 목록과 정돈된 텍스트 데이터를
inner_join()에 전달합니다. inner_join()이 작동하려면 공통 열 이름이 있어야 합니다. 공통 열 이름이 없는 경우, 아래와 같이by매개변수에c를 사용하여 열 이름을 직접 지정하세요.
object <- x %>%
inner_join(y, by = c("column_from_x" = "column_from_y"))
- 교집합 테이블을 바탕으로 집계 및 분석을 수행합니다.
이 연습은 강의의 일부입니다
R을 활용한 감성 분석
연습 안내
아가멤논(Agamemnon)의 첫 100줄이 담긴 ag_txt와 정돈된 형태의 ag_tidy가 미리 불러와져 있습니다.
- 비교를 위해
ag_txt에polarity()를 적용하세요. "bing"을get_sentiments()에 전달하여"bing"어휘 목록을 가져오세요.ag_tidy와bing으로inner_join()을 수행하세요.- 단어 열의 이름이
ag_tidy에서는"term", 어휘 목록에서는"word"이므로by인수를 반드시 지정하세요. - 새 객체의 이름은
ag_bing_words로 지정하세요.
- 단어 열의 이름이
ag_bing_words를 출력하여 결과에 포함된 단어들을 확인하세요.- 파이프 연산자
%>%를 사용하여ag_bing_words를count()에 연결하고sentiment를 집계하세요.polarity()점수와 감성 카운트 비율을 비교해 보세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Qdap polarity
___
# Get Bing lexicon
bing <- get_sentiments("___")
# Join text to lexicon
ag_bing_words <- ___(___, ___, by = c("___" = "___"))
# Examine
ag_bing_words
# Get counts by sentiment
ag_bing_words %>%
___(___)