Core Reporting API v3 - 从特定日期开始采样的数据,但不是在该日期之前

时间:2017-03-30 21:07:45

标签: google-analytics google-analytics-api

我有一个Google Analytics帐户,其视图是在2015-07-29上创建的。

向核心报告api请求2015-07-29作为开始日期:

https://www.googleapis.com/analytics/v3/data/ga?ids=<my-ga-id>&dimensions=ga:medium,ga:year,ga:month,ga:channelGrouping&metrics=ga:transactions&start-date=2015-07-29&end-date=2017-03-30&max-results=10000

我收到以下回复:

{
...
  "containsSampledData": true,
  "sampleSize": "498617",
  "sampleSpace": "1022430",
...
}

这非常有意义 - 它正在对数据进行采样,因为会话数量。

但是,如果我将请求更改为核心报告API,那么现在2015-07-28就是start-date

https://www.googleapis.com/analytics/v3/data/ga?ids=<my-ga-id>&dimensions=ga:medium,ga:year,ga:month,ga:channelGrouping&metrics=ga:transactions&start-date=2015-07-28&end-date=2017-03-30&max-results=10000

我收到以下回复:

{
...
   "containsSampledData": false
...
}

不再对数据进行抽样,并生成正确的值(与Google Analytics Web UI相比)。

如果然后将指标ga:sessions添加到start-date=2015-07-28的请求中,我会获得采样数据。

我的问题是:

为什么在start-date等于或晚于日期时,数据会被采样,Google Analytics视图是否已创建? - 如果是在该日期之前,则不再对数据进行采样? - 但是一旦我加入指标ga:sessions

就会对其进行抽样

1 个答案:

答案 0 :(得分:1)

  

在数据分析中,抽样是分析子集的一种实践   所有数据,以便发现有意义的信息   更大的数据集。例如,在选举周期中,您会听到很多   关于什么百分比的选民更喜欢一个候选人的消息   另一个,或支持或反对某个问题。因为可以   选举中有数十亿到数亿的选民,而且因为选举   进行调查的公司希望获得他们的信息   公众尽快,试图质疑每个选民   每一项新的调查都会非常昂贵并且需要花费太多   时间。为了解决这些问题,测量员使用他们得出的结论   总体选民人口的代表性样本,通常只有1000   来自数百万有资格的选民。

基本上,当返回的数据量很大时,会对数据进行采样。 Google如何计算/确定何时应对请求是Google可以回答的问题。我相信这个问题是基于主要观点的,这是我的观点。

Google会估算您的请求返回的行数,将其除以请求中给出Y的天数。如果Y大于X,则会对其进行抽样。通过在实际开始记录任何数据之前添加日期,您会欺骗系统以减小Y的大小,并且不进行采样。

对我而言,这是一个疯狂的猜测。我可能会测试它听起来像是一种欺骗系统的有趣方式。