我正在使用R
包RSiteCatalyst
来获取上个月访问一组网站的一些信息:
# Extract data for job search visits
jobSearch <- QueueRanked(myReportSuiteId,
dateFrom, dateTo,
metrics = "visits",
elements = "page",
top = 10000,
search = "careers/jobsearch/jobsearch",
segment.id = segment_visits_monthly)
结果是一个数据框,其前5个观察结果为:
> dput(head(jobSearch,5))
data2 <- structure(list(name = c("/en/careers/jobsearch/jobsearch/index.html",
"/de/careers/jobsearch/jobsearch/index.html", "http://www.....com/cms/de/...",
"http://www.....com/cms/en/...",
"https://www....com/cms/..."
), url = c("http://www.....com/cms/en/...",
"http://www.....com/cms/de/...",
"http://www.....com/cms/de/...",
"http://www.....com/cms/en/...",
"https://www.....com/cms/de/..."
), visits = c(36035, 14882, 92, 64, 15), segment.id = c("...",
"...", "...", "...",
"..."), segment.name = c("Visits Monthly Reporting",
"Visits Monthly Reporting", "Visits Monthly Reporting", "Visits Monthly Reporting",
"Visits Monthly Reporting")), .Names = c("name", "url", "visits",
"segment.id", "segment.name"), row.names = c(NA, 5L), class = "data.frame")
在使用Omniture前端获得的结果对API调用的原始结果进行双重检查时,我看到每个页面都有正确的访问次数(将图像与data2$visits
进行比较),但总数是两个不同的值:
> # Sum visits accross data2 observations to obtain the total
> sum(data2$visits)
[1] 51088
我知道granularity
和duplication
有时候会有些棘手。到目前为止,我已经使用趋势报告或加班报告的请求以及将granularity
设置为“月份”来解决这种差异。但是,在请求排名报告时无法定义此属性。
问题: 我希望获得使用API调用在Omniture前端显示的总访问次数。有人已经遇到过这个问题吗?有什么办法吗?
答案 0 :(得分:2)
有些可能性浮现在脑海中:
不太可能 - Adobe Analytics前端提供所有页面的总访问量。在API请求中,您将报告限制在前10K页面。这可能是一个潜在的麻烦来源。
最有可能 - 这似乎是一个重复的问题。由于您使用sum(data2$visits)
在R控制台中自行添加访问次数,因此很可能是重复访问的来源。 当Adobe Analytics在前端执行计算时,它会自动删除重复项。
因此,为了获得总访问量,我会创建一个仅包含符合条件URL contains "careers/jobsearch/jobsearch"
的网页的细分受众群。然后,我将该段应用于与您新创建的段一起使用'accountsummary'报告的查询:
QueueRanked("YourReportSuite",
date.from = '2016-05-01',
date.to = '2016-05-01',
elements = "accountsummary",
segment.id = "YourNewSegment"
metrics = c('visits'))
出于某种原因,'accountsummary'报告正在丢弃我身边的空数据框。但无论如何,主要的消息是我不会尝试通过API在同一个Adobe Analytics报告中获得每页和总访问次数。
希望这有帮助。