Google analytics GA在BigQuery中的页面平均时间
我很难从后端GA BigQuery导出数据计算出页面上的平均时间,我想知道是否有人会看到下面的代码看起来是否合理 我很难从查询资源管理器工具中获取与之匹配的内容 有没有办法为LondonCycleHelmet数据运行查询资源管理器工具 非常感谢您的帮助,谢谢Google analytics GA在BigQuery中的页面平均时间,google-analytics,google-bigquery,Google Analytics,Google Bigquery,我很难从后端GA BigQuery导出数据计算出页面上的平均时间,我想知道是否有人会看到下面的代码看起来是否合理 我很难从查询资源管理器工具中获取与之匹配的内容 有没有办法为LondonCycleHelmet数据运行查询资源管理器工具 非常感谢您的帮助,谢谢 select pageviews, exit_pageviews, sum_hit_length_seconds, sum_hit_length_seconds / (pageviews - exit_pageviews)
select
pageviews,
exit_pageviews,
sum_hit_length_seconds,
sum_hit_length_seconds / (pageviews - exit_pageviews) as avg_time_on_page
from
(
select
SUM(hit_length_seconds) as sum_hit_length_seconds,
COUNT(IF(hits.type='PAGE',(CONCAT(session_key,'_',hits.page.hostname,'_',hits.page.pagePath)),NULL)) AS pageviews,
COUNT(IF((next_hit_time is null) or (hits.hitNumber=hits_hitNumber_max),(CONCAT(session_key,'_',hits.page.hostname,'_',hits.page.pagePath)),NULL)) AS exit_pageviews,
from
(
select
*,
(next_hit_time-hits.time)/1000 as hit_length_seconds,
from
(
select
fullVisitorId,
visitId,
visitorId,
hits.type,
hits.time,
hits.hitNumber,
hits.page.hostname,
hits.page.pagePath,
-- create some keys to handle data later
concat(fullVisitorId,"_",string(visitId)) as session_key,
concat(fullVisitorId,"_",string(visitId),"_",string(hits.hitNumber),"_",string(hits.time)) as hit_key,
-- get max and min number of hits for each session
MAX(hits.hitNumber) WITHIN RECORD AS hits_hitNumber_max,
MIN(hits.hitNumber) WITHIN RECORD AS hits_hitNumber_min,
-- get min and max hit times to work out full session length
MAX(hits.time) WITHIN RECORD AS hits_time_max,
MIN(hits.time) WITHIN RECORD AS hits_time_min,
-- get next and previous hit time to be able to work out length of each hit
LAG(hits.time, 1) OVER (PARTITION BY fullVisitorId, visitId ORDER BY hits.time ASC) as previous_hit_time,
LEAD(hits.time, 1) OVER (PARTITION BY fullVisitorId, visitId ORDER BY hits.time ASC) as next_hit_time,
from
[google.com:analytics-bigquery:LondonCycleHelmet.ga_sessions_20130910]
)
)
)
更新/澄清:
我认为,当我在一段时间内看一个单独的页面时,它开始出问题
例如,如果我在BigQuery中运行以下命令:
select
pageviews,
exit_pageviews,
sum_hit_length_seconds,
sum_hit_length_seconds / (pageviews - exit_pageviews) as avg_time_on_page
from
(
select
SUM(hit_length_seconds) as sum_hit_length_seconds,
COUNT(IF(hits.type='PAGE',(CONCAT(session_key,'_',hits.page.hostname,'_',hits.page.pagePath)),NULL)) AS pageviews,
COUNT(IF((next_hit_time is null) or (hits.hitNumber=hits_hitNumber_max),(CONCAT(session_key,'_',hits.page.hostname,'_',hits.page.pagePath)),NULL)) AS exit_pageviews,
from
(
select
*,
(next_hit_time-hits.time)/1000 as hit_length_seconds,
from
(
select
fullVisitorId,
visitId,
visitorId,
hits.type,
hits.time,
hits.hitNumber,
hits.page.hostname,
hits.page.pagePath,
-- create some keys to handle data later
concat(fullVisitorId,"_",string(visitId)) as session_key,
concat(fullVisitorId,"_",string(visitId),"_",string(hits.hitNumber),"_",string(hits.time)) as hit_key,
-- get max and min number of hits for each session
MAX(hits.hitNumber) WITHIN RECORD AS hits_hitNumber_max,
MIN(hits.hitNumber) WITHIN RECORD AS hits_hitNumber_min,
-- get min and max hit times to work out full session length
MAX(hits.time) WITHIN RECORD AS hits_time_max,
MIN(hits.time) WITHIN RECORD AS hits_time_min,
-- get next and previous hit time to be able to work out length of each hit
LAG(hits.time, 1) OVER (PARTITION BY fullVisitorId, visitId ORDER BY hits.time ASC) as previous_hit_time,
LEAD(hits.time, 1) OVER (PARTITION BY fullVisitorId, visitId ORDER BY hits.time ASC) as next_hit_time,
from
[XXX.ga_sessions_20151001],
[XXX.ga_sessions_20151002],
[XXX.ga_sessions_20151003],
where
hits.page.pagePath='/2015/10/01/blah-blah/'
)
)
)
我得到:
[
{
“浏览量”:“24002”,
“退出页面浏览量”:“22468”,
“总和命中长度秒”:“455762.1240000001”,
“页面上的平均时间”:“297.106990873533333”
}
]
但如果我像这样看查询资源管理器:
我得到:
所以看起来页面浏览量是匹配的,但页面上的出口和时间似乎完全不同,我不明白为什么
有人能在您自己的数据上重新创建此示例吗
有一种感觉它与GA中如何计算页面上的出口和时间有关,但在BQ GA食谱中找不到任何关于如何计算页面上的时间或出口的示例 我不明白你说的查询浏览器是什么意思。您可以直接在资源管理器中复制此查询,它可以正常工作。不管怎样,从我所看到的来看,它看起来不错。我是说GA开发者thingy:啊!谢谢你的澄清。我以为你指的是BQ GUI。我不太了解它的分析方面,尽管我会问,因为sql查询与我使用ga查询资源管理器时得到的结果不匹配。它是与前端对齐的ga查询资源管理器。但问题是,我无法将ga query explorer指向伦敦自行车头盔,这意味着我无法在这里给出完整的图片。我不清楚“exitPageviews”/“pageviews”计数是否与ga定义的持续时间相匹配。我不是GA方面的专家,所以我在这里很容易出错,但从它看来duration有几个奇怪的例子。从这个角度来看,页面上的平均时间也不完全准确。