顧客の声を数値化 — AIで感情をリアルタイム可視化
SECTION 19 — 感情分析ダッシュボード
感情分析(Sentiment Analysis)
テキストデータから書き手の感情・意見・態度を自動判定する自然言語処理技術。顧客レビュー、SNS投稿、アンケート回答などを大規模に処理できる。
レビュー・コメント・フィードバックなど自然言語テキスト
Gemini APIが文脈・ニュアンス・感情語を総合的に判断
感情スコア(1〜5)・ラベル・要因キーワードを返す
判定カテゴリ
ポジティブ
スコア 4〜5 / 満足・称賛・推薦
ニュートラル
スコア 3 / 事実的・どちらでもない
ネガティブ
スコア 1〜2 / 不満・苦情・警告
SECTION 19 — 感情分析ダッシュボード
ECサイト・アプリストアのレビューを一括分析。製品改善の優先度を自動判定。
TwitterやInstagramの言及をリアルタイム監視。炎上リスクを早期に検知。
社内アンケートの自由記述を自動分類。離職リスクの高い部門を定量的に把握。
SECTION 19 — 感情分析ダッシュボード
使用するGoogleサービス
コスト見積もり
SECTION 19 — 感情分析ダッシュボード
スプレッドシートのデータ構造
| 列名 | 内容 | 型 |
|---|---|---|
| timestamp | 入力日時 | datetime |
| source | 収集元(フォーム/API) | string |
| category | カテゴリ(商品/サポート等) | string |
| review_text | 元のレビューテキスト | text |
| score | 感情スコア(分析後) | number |
| label | 感情ラベル(分析後) | string |
顧客満足度調査・お問い合わせフォームの回答をスプレッドシートに自動格納。フォーム送信トリガーで即時分析も可能。
外部サービス(ECプラットフォーム等)のAPIからGASでレビューを定期取得。URLFetchApp.fetchを使用。
SECTION 19
Gemini APIとGASで大量テキストを一括処理する
SECTION 19 — AI感情分析の実装
JSON形式で構造化された結果を返すプロンプトを設計します。スコア・ラベル・要因を一度に取得するのがポイントです。
設計のポイント(青: 基本概念)
出力例(緑: 推奨パターン)
{
"score": 4,
"label": "ポジティブ",
"factors": ["迅速な対応", "丁寧"],
"summary": "対応スピードに満足"
}
SECTION 19 — AI感情分析の実装
SECTION 19 — AI感情分析の実装
分析結果を適切な列構成でスプレッドシートに格納することで、Looker Studioでの集計・可視化が容易になります。
| 列 | 項目名 | 内容 | Looker Studioでの用途 |
|---|---|---|---|
| A | timestamp | 受付日時 | 時系列グラフの軸 |
| B | source | 収集元 | フィルタ・ディメンション |
| C | category | カテゴリ | ドリルダウン用ディメンション |
| D | review_text | 元テキスト | 詳細表示用 |
| E | score | 感情スコア(1〜5) | KPI・平均値算出 |
| F | label | ポジ/ニュートラル/ネガ | 円グラフ・フィルタ |
| G | factors | 要因キーワード | キーワード頻度分析 |
| H | analyzed_at | 分析実行日時 | 処理状況の確認 |
SECTION 19
Looker Studioで感情データを視覚的に表現する
SECTION 19 — ダッシュボード構築
lookerstudio.google.comにアクセスし、「レポートを作成」をクリック
「Googleスプレッドシート」コネクタを選択し、分析済みシートを指定
score列を「数値」、label列を「テキスト」、timestamp列を「日付」に設定
「平均感情スコア」「ポジ率」などをカスタム計算式で作成
重要な計算フィールド例
SECTION 19 — ダッシュボード構築
ダッシュボードの上部に主要KPIをスコアカードとして並べることで、一目で状況を把握できます。
スコアカードの設定
指標: AVG(score)
比較期間: 前の期間
条件付き書式で色分け
ポジ率の設定
計算フィールドを使用
COUNTIF / COUNT * 100
緑色で表示(推奨)
補足ヒント
スコアカードは最大6個まで
最重要指標に絞ること
数値のフォーマット設定も忘れずに
SECTION 19 — ダッシュボード構築
ディメンション: 日付(週単位)
指標: 平均スコア、ポジ率
トレンド変化を一目で確認
ディメンション: label
指標: COUNT(label)
全体バランスを把握
ディメンション: factors
指標: COUNT件数
改善優先度の特定に活用
SECTION 19 — ダッシュボード構築
インタラクティブなフィルタコントロールを配置することで、分析担当者が自在にデータを絞り込めるダッシュボードになります。
ダッシュボード全体に適用。デフォルトを「過去30日間」に設定する
「商品」「サポート」「配送」などのカテゴリで絞り込み。複数選択可能に設定
ネガティブのみ表示して集中分析するなど、対応優先度の高い案件に絞れる
スコア1〜2のみを表示して低評価レビューを集中的に確認・対応
推奨フィルタ配置(緑: 推奨)
フィルタはレポートの最上部に横並びで配置。ユーザーが最初に目にする場所に置くことで操作性が向上します。
注意点(赤: リスク)
フィルタを多くしすぎると表示が遅くなります。重要な3〜5個に絞り込みましょう。全ページ共通フィルタにはページレベルではなくレポートレベルで設定すること。
SECTION 19
ネガティブ急増を即座に検知・通知する仕組みを構築する
SECTION 19 — アラート機能
SECTION 19 — アラート機能
Looker Studioのレポートを週次でPDF化し、関係者に自動配信します。GASの時間駆動トリガーと組み合わせます。
トリガー設定
GASエディタ → 時計アイコン → トリガーを追加
「時間ベースのトリガー」→「週タイマー」→「月曜日」「午前8〜9時」を選択
実行する関数に sendWeeklyReport を指定して保存
SECTION 19
実際に手を動かして感情分析ダッシュボードを構築しよう
SECTION 19 — ハンズオン
サンプルデータ(スプレッドシートに貼り付け)
| category | review_text |
| 商品 | 品質が良く大満足です。また購入します! |
| 配送 | 届くのに2週間かかりました。遅すぎます。 |
| サポート | 問い合わせへの返答が丁寧でよかった。 |
| 商品 | 説明通りの商品でした。普通です。 |
新規スプレッドシートを作成し、「レビュー」シートにサンプルデータを入力
拡張機能 → Apps Script を開き、配布コードを貼り付けてAPIキーを設定
analyzeSentimentBatch を実行。E〜H列に分析結果が入力されることを確認
SECTION 19 — ハンズオン
lookerstudio.google.com → 「レポートを作成」 → Googleスプレッドシートを選択
「リソース」→「データソースを管理」→フィールドを追加 → ポジ率を計算式で作成
グラフを追加 → スコアカード → 平均スコア/ポジ率/ネガ率/件数を設定
時系列折れ線グラフと感情分布ドーナツグラフをレイアウトに配置
日付範囲コントロールとカテゴリプルダウンをヘッダー部分に配置
完成時のチェックリスト
SECTION 19 — ハンズオン
GASスクリプトに配布コードを追加。ALERT_THRESHOLD(閾値)を自分で設定
閾値を0(常にアラート)に設定し、手動実行してメールが届くことを確認
トリガー追加 → 時間ベース → 「毎時」→ checkNegativeAlert を実行
0.3(30%)など実際の運用に合わせた閾値に戻して設定完了
SECTION 19 — 感情分析ダッシュボード
感情分析 × Looker Studio の組み合わせで、顧客の声をリアルタイムに数値化・可視化するダッシュボードが構築できます。
Googleフォームやスプレッドシートでレビューを収集・蓄積する
GASのバッチ処理で大量テキストをスコア・ラベル・要因に変換
KPIスコアカード・時系列グラフ・感情分布でダッシュボード化
ネガティブ急増を自動検知して即時通知・週次レポート配信
習得したスキル
構造化JSON出力を安定して得るプロンプトパターン
未処理行のみ分析する効率的なループ設計
KPI・グラフ・フィルタの効果的な配置
感情分析ダッシュボードの構築スキルを習得しました