レーダーチャート
Plutchikの感情の輪を覚えていますか?NRCのレキシコンには、輪の最初のリングに対応する8つの感情が含まれています。前の演習では、8つの基本感情に基づいてcomparison.cloud()を作成しました。今回は、あの輪に似たレーダーチャートを作成します。
radarchartは、多次元データ(少なくとも3次元)を2次元で表現する方法です。ここでは本ごとの感情の出現数をチャートで表します。レーダーチャートを使うと、8つの感情を同時に確認できます。
これまで同様、"nrc" レキシコンは nrc として、Moby Dick と Huck Finn を結合して整形した moby_huck を読み込んであります。
この演習では再び、否定の grepl() を使って、チャートから感情クラスの "positive|negative" を取り除きます。復習として例を示します。
object <- tibble %>%
filter(!grepl("positive|negative", column_name))
この演習では、集計済みの感情語を並べ替えるためにpivot_wider()を再登場させます。復習として、生データ datacamp を考えます。
| people | food | like |
|---|---|---|
| Nicole | bread | 78 |
| Nicole | salad | 66 |
| Ted | bread | 99 |
| Ted | salad | 21 |
ここで pivot_wider() を datacamp %>% pivot_wider(names_from = people, values_from = like) のように適用すると、データは次のようになります。
| food | Nicole | Ted |
|---|---|---|
| bread | 78 | 99 |
| salad | 66 | 21 |
この演習はコースの一部です
Rで学ぶSentiment Analysis
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Review tail of moby_huck
moby_huck[___:___,]
# Perform join
scores <- moby_huck %>%
# Inner join to lexicon
___(___, by = c("___" = "___"))
# Filter, count and spread the data
scores %>%
# Drop positive or negative sentiments
___(!___("___|___", ___)) %>%
# Count by book and sentiment
count(___, ___) %>%
# Pivot book, using n as values
pivot_wider(names_from = ___, values_from = ___, values_fill = ___)