この記事では「Natural Language API」を使用してツイートを数値化し分析をしてみます。
分析の目的は「Twitterをバズらせる!」
本分析の目的は 「潜在ニーズの表出」と「SNS(twitter)からのサイトへの流入」であり、
本分析の目標は「この単語を使うとエンゲージメント率(サイトURLクリック率)が上がりますよ!」と言えるようになることです。
手順は以下の通りです。
- GASを使用して、スプレッドシート経由でツイートを自然言語処理
- 数値化されたツイートをBigQueryに挿入
- データポータルで可視化、BQMLで分析
この記事では手順1のツイートを自然言語処理する部分の記事です。
「Natural language API」で自然言語処理ができる
Cloud Natural Language | Google Cloud
「Natural Language API」とはGoogleが提供する自然言語処理APIです。このAPIでは、「構文解析」「感情分析」「エンティティ分析」「エンティティ感情分析」「コンテンツの分類」を行うことができます。今回のTwitter分析では「エンティティ感情分析」を使用しました。
Natural language APIを使ってみる
ツイートを数値化し、分析できる形に変換します。
以下の記事を参考に行っていきます。
Natural Language API でお手軽センチメント分析(感情分析) – Qiita
NLAPIをGCPにて有効化する
Cloud Natural Language | Google Cloud
途中でクレジットカードの登録が必要です。
左上のナビゲーションメニューから、「APIとサービス」→「ライブラリ」→「Natural Language API」で検索し、有効化します。
↑有効化された画面
その後、「APIとサービス」→「認証情報」→「認証情報を作成」からAPIキーを作成してください。APIキーはこの後スクリプトで使います。
料金について
5000ユニットまでは無料で分析を行うことができます。詳しくはドキュメントの料金の欄をご覧ください。
Pricing | Cloud Natural Language | Google Cloud
今回の筆者の分析は、今回は1800ツイートほど分析しました。1000文字=1ユニットであり、Twitterの文字制限は280文字です。つまり1800ユニットであり、無料枠の中で分析をすることができました。
NLAPIをスプシで使う
使用するのは「エンティティ感情分析」です。




スプレッドシートを新規作成し、拡張機能から「AppScript」を選択
2.サンプルコードをペーストする
APIキーを自分のAPIキーに変更してください。その後シートに戻ってF5で更新すると、「カスタムメニュー」が表示されるので、A列に分析したい文章を入力し範囲選択することによって分析をすることができます。
このように結果が表示されれば分析成功です。
まとめ
これによって文章を数値データにすることができました。「Natural Language API」を使用することによって、Twitterの文章に限らず様々な文章の傾向を数値化することができます。
反省点としては、「エンティティ感情分析」を使用したのですが、テキストの傾向的にscoreとmagunitudeの値がうまく返ってこなかった点です。
次回はこの数値とTwitterのアナリティクスデータをBigQueryにアップし、分析ができるようにしていきます。



