1. 学ぶ
  2. /
  3. コース
  4. /
  5. Rで学ぶSentiment Analysis

Connected

演習

さっそく始めましょう! 極性を可視化する

センチメント分析は、著者が対象に対してどのように感じているかを読み解くのに役立ちます。 この演習で、これから学ぶ内容の雰囲気をつかみましょう!

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)

特に、あるテキストのセンチメントを定量的に判断するには、スコアを与える必要があります。 単純な方法としては、文、段落、またはコーパスと呼ばれる文書集合に対して、ポジティブまたはネガティブな値を割り当てます。 ポジティブ/ネガティブのみで採点することを「極性(polarity)」と呼びます。 極性スコアを取り出すのに便利な関数が、極性オブジェクトに対して適用する counts() です。 すばやく可視化したいときは、polarity() の結果に対して plot() を呼び出します。

指示

100 XP
  • text_df の会話データフレームを確認します。
  • %$% を使って text_df を polarity() に渡し、列名 text を引用符なしで指定します。 これで全テキストの極性が表示されます。
  • 新しいオブジェクト datacamp_conversation を作成します。text_df を %$% で polarity() に渡し、text に続けてグループ化用の person 列を渡します。 これで各人物ごとの極性が計算され、括弧内なので結果も表示されます。
  • datacamp_conversation に counts() を適用して、検出された具体的な感情語を表示します。
  • datacamp_conversation を plot() で可視化します。