An interface for retrieving and displaying the information returned online by Google Trends is provided. Trends (number of hits) over the time as well as geographic representation of the results can be displayed.
gtrendsR provides an interface for retrieving and displaying Google Trends
Trends (number of hits) over time as well as geographic representation of the results can be displayed.
In this simple example, trends for keywords
retrieved and then plotted from R.
library(gtrendsR)usr <- "email@example.com" # alternatively store as options() or env.varpsw <- "password" # idemgconnect(usr, psw) # stores handle in environmentsport_trend <- gtrends(c("nhl", "nba", "nfl"))plot(sport_trend) # data set also included in package
It is also possible to plot geographical data using
googleVis as follow.
plot(sport_trend, type = "geo", which = 5)plot(sport_trend, type = "geo", which = 6)plot(sport_trend, type = "geo", which = 7)
Should you have trouble connecting, and also use two-factor authentication on your Google Account, then consider creating another Google account (without two-factor authentication) which should allow automated (i.e. programmatic) connection here.
Since release 1.3.0, the package is on CRAN and can be installed via
Pre-release versions can be install directly from this repository via
if (!require("devtools")) install.packages("devtools")devtools::install_github("PMassicotte/gtrendsR")
Philippe Massicotte and Dirk Eddelbuettel
GPL (>= 2)
Fixing loging issue due to backdoor changes made by Google (#103). Thanks to @MrLoh for initial implementation and suggestions.
Fixing crash occuring when monthly data was returned (#81).
gtrends() will throw a warning if data is returned monthly (#80).
gtrends() is now correctly detecting when quota limit is reached (#90).
A ggplot2 object can now be returned for further customization.
plot(gtrends("NHL")) + ggtitle("NHL trend") + theme(legend.position="none")
Support for hourly and daily data (#67). For example, it is now possible to have hourly data for the last seven days with
gtrends("nhl", geo = "CA", res = "7d"). Use
?gtrends for more information about the time resolution supported by the package.
Support for categorties (#46). Ex.:
gtrends("NHL", geo = "US", cat = "0-20") will search only in the sport category.
Some countries (ex: Hong Kong) were missing from the list (#69).
Various typos and documentation work.
Added support for sub-countries (#25). Ex.:
gtrends("NHL", geo = "CA-QC") will return trends data for Québec province in Canada. The list of supported sub-countries can be obtained via
Data parsing should work for any data returned by Google Trends (i.e. countries independent).
Better support for queries using keywords in different languages (#50, #57). Ex.:
gtrends("蘋果", geo = "TW")
Now able to specify up to five countries (#53) via
gtrends("NHL", geo = c("CA", "US"))
Fixing issue #51 allowing UK-based queries via
geo = "GB"