[心得] RGoogleAnalytics

作者: jklkj (誠實可靠小郎君)   2016-06-01 17:48:36
[關鍵字]:
RGoogleAnalytics
[重點摘要]:
之前有用RGoogleAnalytics撈取一些資料,也參考網路上一些資料做了自動的功能
想說跟大家分享一下,因為現在正值新工作蜜月期,所以比較有空分享
library("RGoogleAnalytics") #首先當然是要先library進來
client.id <- "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.apps.googleusercontent.com"
client.secret <- "Vlww7gdXdSGnbGp3mdkR6r9H"
token <- Auth(client.id, client.secret) #我是習慣這樣設,就是把帳密設給token
save(token, file="C:/Users/token_file") #這是把剛剛的token存起來
之後有需要就不用再跑一次
ValidateToken(token) #這是檢察token有沒有過期,如果過期的話會再次認證(好像)
profile <- GetProfiles(token) #這個可以看GA帳號裡所有的table.id之後會講
接下來就可以跑GA了
APPnewslist.list <- Init(start.date = "2016-01-01", #日期的標準格式
end.date = "2016-01-02",
dimensions = "ga:date", #GA的維度
metrics = "ga:pageviews", #GA的指標
https://developers.google.com/analytics/devguides/reporting/core/dimsmets
上面這個網址可以找GA的維度跟指標
max.results = 10000,#最大就是10000,如果需要更多等等講
sort = "ga:date", #這是依照哪個維度做排序
必須是要在dimensions有下的才能用
table.id = ga:12345678) #剛剛說的table.id就是放在這
APP.query <- QueryBuilder(APP.list)
APP.data <- GetReportData(APP.query, token)
剛剛有說如果資料量大於10000怎麼辦 ^方法就是在token之後加個
paginate_query=True
APP.data <- GetReportData(APP.query, token, paginate_query=True) #像這樣
然後如果你抓的資料區間過長,例如一年吧,GA就會用說資料來自幾%的抽樣
如果要避免這樣的問題可以下split_daywise=True在token之後
這要RGoogleAnalytics就會每天去跑資料,但是如果中間某天資料量是0的話就會中斷
但要記得GA一天好像可以接受10000筆的查詢
但是如果你用split_daywise=True每天就算是一筆
感覺是很多,但是如果公司用的話其實一不小心就會超量,我在之前的公司就超過兩次
之後就只能望著電腦發呆
寫著寫著突然發現我下班時間到了,明天再說怎麼自動跑
作者: postpone (dead man)   2016-06-04 11:50:00
厲害!

Links booklink

Contact Us: admin [ a t ] ucptt.com