1. Learn
  2. /
  3. Courses
  4. /
  5. Rで学ぶSentiment Analysis

Connected

Exercise

ボックスプロット

複数の分布を比較する簡単な方法がボックスプロットです。次のコードは、複数のボックスプロットを作り、見やすくコンパクトに可視化するのに役立ちます。

この演習では、all_book_polarity オブジェクトがすでに読み込まれています。データフレームには book と polarity の2列があり、すべての書籍に対して qdap の polarity() 関数を適用した結果が入っています。大きなオブジェクトの先頭3行は次のとおりです。

book polarity
14 huck 0.2773501
22 huck 0.2581989
26 huck -0.5773503

この演習では、まばらな配列に関数を適用できる tapply() を紹介します。最初に値のベクトル、次に因子のベクトルを入力します。各因子と値の組み合わせに対して、3つ目の引数で渡した関数(たとえば min())が適用されます。たとえば、2つのベクトルに対して tapply() を使うと次のようになります。

f1 <- as.factor(c("Group1", "Group2", "Group1", "Group2"))
stat1 <- c(1, 2, 1, 2)
tapply(stat1, f1, sum)

結果は配列で、Group1 の値は 2 (1+1)、Group2 の値は 4 (2+2) になります。

Instructions

100 XP
  • すでに読み込まれている all_book_polarity を str() で確認します。
  • tapply() を使い、all_book_polarity$polarity、all_book_polarity$book、summary() を渡します。これにより、4つの書籍それぞれの polarity() スコアの要約統計量が表示されます。一般に、Oz と Huck Finn は Agamemnon や Moby Dick より平均が高いはずです。中央値に特に注目してください。
  • ggplot() に all_book_polarity を渡してボックスプロットを作成します。
    • Aesthetics は aes(x = book, y = polarity) とします。
    • + で geom_boxplot() を追加し、col = "darkred" を指定します。各ボックス内の太い線(中央値)に注目してください。
    • 次に、各単語の点を追加するために、geom_jitter() をレイヤーとして追加します。