El not-provider se ha convertido en el pan nuestro de cada día para los que somos webmaster y estamos acostumbrados a echarle un ojo al Google Analytics. Google ya anunció que est sería un cambio irreversible y este post va para aquellas que les pique la curiosidad sobre como se ha ido apoderando de su cuenta el not-provider aquí tenéis el mío. Y si quieres comparar... esta empresa lleva sus propios datos actualizados.
Ahora vamos al código
# Keep libraries
library(devtools)
library(rga)
library(RCurl)
options(RCurlOptions = list(cainfo = system.file("CurlSSL", "cacert.pem", package = "RCurl")))
ga$getRefClass()
rga.open(instance="ga")
#Not provided query
visits_notprovided.df <- ga$getData(39015127,
start.date = "2011-01-01",
end.date = "2014-02-10",
metrics = "ga:visits",
filters = "ga:keyword==(not provided);ga:source==google;ga:medium==organic",
dimensions = "ga:date",
max = 1500,
sort = "ga:date")
names(visits_notprovided.df)<- c("hit_date", "np_visits")
# Get sum of all Google Organic Search results. Replace XXXXXXXX with your profile ID from GA
visits_orgsearch.df <- ga$getData(XXXXXXXX,
start.date = "2011-01-01",
end.date = "2014-02-10",
metrics = "ga:visits",
filters = "ga:source==google;ga:medium==organic",
dimensions = "ga:date",
max = 1500,
sort = "ga:date")
names(visits_orgsearch.df)<- c("hit_date", "total_visits")
# Merge files, create metrics, limit dataset to just days when tags firing
merged.df <- merge(visits_notprovided.df, visits_orgsearch.df, all=TRUE)
merged.df$search_term_provided <- merged.df$total_visits - merged.df$np_visits
merged.df$pct_np <- merged.df$np_visits / merged.df$total_visits
merged.df$yearmo <- year(merged.df$hit_date)*100 + month(merged.df$hit_date)
final_dataset = subset(merged.df, total_visits > 0)
# Visualization - boxplot by month
# Main plot, minus y axis tick labels
boxplot(pct_np~yearmo,data=final_dataset, main="Google (not provided)\nPercentage of Total Organic Searches",
xlab="Year-Month", ylab="Percent (not provided)", col= "orange", ylim=c(0,.8), yaxt="n")
#Create tick sequence and format axis labels
ticks <- seq(0, .8, .2)
label_ticks <- sprintf("%1.f%%", 100*ticks)
axis(2, at=ticks, labels=label_ticks)
Para ver el código comentado paso a paso puedes estudiar este artículo. http://www.computerworld.com/article/2486018/business-intelligence-how-to-extract-custom-data-from-the-google-analytics-api.html