Rで解析:Google Trendsのデータを取得「gtrendsR」パッケージ

Rの解析に役に立つ記事

Google Trendsのトレンドデータを取得することができるパッケージの紹介です。日本語検索も文字化けせずデータを取得することができます。

RにはGoogle Analytics、Google Search Console、Googleスプレッドシートを操作することができるパッケージもあります。Rから一通りGoogleのサービスを利用することができるのでウェブ解析に役に立つのではと思います。これらのパッケージはウェブ解析士の方にオススメです。

・Google Analyticsからデータを取得「RGA」パッケージの紹介
 https://www.karada-good.net/analyticsr/r-141/

・Google Search Consoleを操作!「searchConsoleR」パッケージ
 https://www.karada-good.net/analyticsr/r-215/

・Googleスプレッドシートの操作ができる!「googlesheets」パッケージ
 https://www.karada-good.net/analyticsr/r-136/

パッケージバージョンは1.5.1。実行コマンドはR version 4.2.2で確認しています。

スポンサーリンク
スポンサーリンク

パッケージのインストール

下記、コマンドを実行してください。

#パッケージのインストール
install.packages("gtrendsR")

実行コマンド

詳細はコメント、パッケージのヘルプを確認してください。CRAN以外からのインストールが必要なパッケージはインストールコマンドを表示しています。全てのパッケージはからだにいいもので紹介していますので、検索してみてください。

相変わらず人気な”ダンまち”, “ヘスティア”を例に紹介します。

#パッケージの読み込み
library("gtrendsR")
library("ggplot2")
library("reshape")
library("scales")
library("stringi")

#macで日本語文字化け防止
#theme_set(theme_bw(base_family = "HiraKakuProN-W3"))

#グーグルアカウントを設定
usr <- "メールアドレスを入力"
psw <- "パスワードを入力"

#アカウントにログイン
gconnect(usr, psw)

#GoogleTrendを取得:gtrendsコマンド
#検索クエリの指定:queryオプション
#地域の指定:geoオプション
#取得単位の設定:resオプション:week,dayの指定が可能
#取得期間の設定:start_date,end_dateオプション
GetTrend <- gtrends(query = stri_encode(c("ダンまち", "ヘスティア"), "", "utf-8"), geo = "JP",
                    start_date = "2015-04-01", end_date = "2015-06-30")
#$trendのラベルを修正
names(GetTrend$trend) <- c("start", "ダンまち", "ヘスティア")

###検索数を折れ線グラフでプロット#####
#グラフ用にデータを加工
LinePlotData <- melt(GetTrend$trend, id = colnames(GetTrend$trend[1]),
                     measure = colnames(GetTrend$trend[2:ncol(GetTrend$trend)]))
#プロットコマンド
ggplot(LinePlotData, aes(x = start, y = value, colour = variable)) +
  geom_line(size = 1.5) +
  labs(colour = "検索クエリ", x = "日付", y = "検索数", title = GetTrend$meta) +
  scale_colour_manual("variable", values = c("#505457", "#4b61ba"))
########

###人気のキーワードを棒グラフでプロット####
#データを抽出
GetSearchData <- GetTrend$ダンまち.の人気キーワード
#順序データを付与
GetSearchData <- cbind(GetSearchData, 1:nrow(GetSearchData))
#色を設定
#scalesパッケージを利用
x <- seq(0, 1, length = 50)
colours <- seq_gradient_pal(c("#4b61ba", "#a87963"))(x)
#ggstanceパッケージを利用
#devtools::install_github("lionel-/ggstance")
library("ggstance")
ggplot(GetSearchData, aes(x = GetSearchData[, 2],
                          y = reorder(GetSearchData[, 1], GetSearchData[, 3]), 
                          fill = GetSearchData[, 2])) +
  geom_barh(aes(fill = GetSearchData[, 1]), stat = "identity") +
  labs(colour = GetSearchData[, 1], x = "検索数", y = "キーワード", title = GetTrend$meta) +
  scale_fill_manual(colnames(GetSearchData[2]), values = colours, guide = FALSE)
#####

出力例

・検索数を折れ線グラフでプロット

GtrendLinePlot

・人気のキーワードを棒グラフでプロット

keywordgt

少しでも、あなたのウェブや実験の解析が楽になりますように!!

タイトルとURLをコピーしました