我正在使用RGoogleAnalytics库将我的Google Analytics帐户中的所有数据导入R.但是,复杂查询会提供0个结果。
我的代码如下:
query.list <- Init(start.date = paste(c(lastmonth.startdate)),
end.date = paste(c(lastmonth.enddate)),
metrics = "ga:goalCompletionsAll",
dimensions = "ga:countryIsoCode,ga:yearMonth",
filters = "ga:goalCompletionsAll>0",
max.results = 10000,
table.id = sprintf("ga:%s", sites$profile.id[i]))
# Create the Query Builder object so that the query parameters are validated
ga.query <- QueryBuilder(query.list)
# Extract the data and store it in a data-frame
ga.countriesConversions1 <- GetReportData(ga.query, token)
所有内容都在“for”中,如果其中一个查询以0结果结束,则脚本会停止,因为如果没有数据, GetReportData(ga.query,token)无法创建数据框
我想知道是否有办法使用警告消息(“您的查询匹配0结果。请使用查询Feed资源管理器验证您的查询并重新运行”)将库分配给控制台,将其分配给变量并将其用作if条件。所以我可以在下一个函数出现之前创建一个虚拟data.frame。
答案 0 :(得分:1)
假设getReportData
正在抛出错误,那么您可以尝试:
ga.countriesConversions1 <- try(GetReportData(ga.query, token), silent=TRUE)
if(inherits(ga.countriesConversions1, "try-error")) {
warning(geterrmessage())
... error handling logic ...
}