Joa*_*que 2 google-analytics-firebase
我正在将我的应用程序迁移到 V4,问题是您需要将 includeEmptyRows 设置为 TRUE,这就是我刚刚所做的。然而,空行根本没有填充。
function queryReports() {
gapi.client.request({
path: '/v4/reports:batchGet',
root: 'https://analyticsreporting.googleapis.com/',
method: 'POST',
body: {
reportRequests: [
{
**includeEmptyRows: 'true',**
//**this above for empty rows
viewId: VIEW_ID,
dateRanges: [
{
startDate: startDate0,
endDate: endDate0
}
],
//**below samplimg levels
samplingLevel: 'LARGE',
//request metrics here
metrics: [
{
expression: 'ga:sessions',
}
,
{
expression:'ga:goalCompletionsAll',
},
{
expression:'ga:transactionRevenue',
},
{
expression:'ga:transactions',
},
],
//request dimensions here
dimensions: [
{
name:'ga:channelGrouping',
},
{
name:'ga:yearMonth',
},
],
}
]
}
}).then(displayResults, console.error.bind(console));
}
Run Code Online (Sandbox Code Playgroud)
我只得到非空行值,所以几个月没有关于任何特定通道的数据被简单地跳过:/
不确定这里出了什么问题,我遵循了文档中的规范,但它根本不起作用。
希望有人能帮我一把
非常感谢J。
该文档可能会好得多 - 不幸的是,它使人们相信您将为每个具有零值的维度组合返回行。不幸的是,事实并非如此。如果您要从查询中排除 ChannelGrouping,即使有 0 个会话,您也确实会获得日期范围内所有 yearMonth 值的行。
换句话说,当您只在查询中包含日期维度(而不是时间维度)时,这会像您期望的那样工作。
我相信这是因为每个日期期间每个维度的基数是未知的。您是否希望每一年和 ChannelGrouping 组合都有 0 个会话?如果将国家和城市作为维度添加会怎样?
有可能获得您想要的结果,而不是通过针对 API 的单个查询。以下是使用Analytics Canvas的步骤概述,但您可以使用 JavaScript(或任何进行 API 调用的语言)和 SQL 自行执行相同的步骤。
要获得结果,请执行以下 3 个查询:
2)时间段内的 channelGrouping 和 session
3) yearMonth、channelGrouping 和 session(您的查询如上所示):
现在对查询 1 和 2执行交叉联接,从输出中删除会话。您将拥有一个表,其中包含您的时间段的 yearMonth 和 channelGrouping 的所有组合。我们称之为表 4。
接下来对表 4 和查询 3 执行左外连接,从查询 3 中删除 yearMonth 和 channelGrouping。
您现在拥有表 5,其中包含 yearMonth 和 channelGrouping 的每个组合、该组合中存在会话的会话的值,以及其余会话的空值。
最后用零替换空值,你就得到了你想要的数据集。
isnull([Original.sessions], 0)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1492 次 |
| 最近记录: |