2017-03-23 4 views
3

예. 지난 30 일 동안 가장 많이 방문한 세 페이지를 세션 수별로 정렬하고자합니다.마지막 X 일의 측정 항목으로 정렬 된 측정 기준의 상위 Google 애널리틱스 항목을 가져옵니다.

매일 매일 ga:pagePath 세 항목을 ga:sessions별로 정렬하고 싶습니다. 이것이 단일 쿼리에서 가능합니까?

이 쿼리는 90 개 항목, 하루 3 개 ga:pagePath 항목을 반환해야합니다. 페이지 대신 대부분 매일 방문 : 또 다른 예로서

는 세 가장 빠른 로딩 (pageLoadTime GA)을 얻을 수 있습니다? 이것은 정렬 척도와 관련하여 ASC가 아니라 DESC 정렬을 필요로합니다.

필요한 경우 v4 API를 사용할 수 있습니다.

+1

몇 가지 생각이 있습니다. 쿼리 당 최대 기간 만 사용할 수 있으므로 이렇게 할 수는 없습니다. 따라서 옵션은 행과 열을 가지고 재생하는 것입니다. 내가해야 할 일은 내 측정 기준이며 페이지 및 날짜, 측정 항목 페이지 뷰 (최대 9999 개), 페이지 뷰 순입니다. 그 다음 json을 맨 아래로 읽는 함수로 데이터를 새로운 최종 배열 (또는 json)로 이동합니다. 왜 이런 식으로? 쿼리에서만이 작업을 수행 할 수 없기 때문입니다. –

답변

2

1) 각각의 하루에 대해 내가 원하는 3 대 GA : 조지아에 의해 매일 분류 pagePath 항목 : 세션. 이것이 단일 쿼리에서 가능합니까?

예이 가능합니다. 고유 한 페이지 뷰를 통해이를 수행 할 수 있습니다. Unique Pageviews is the number of sessions during which the specified page was viewed at least once. A unique pageview is counted for each page URL + page Title combination.

명백한주의해야 할 점은 URL + 페이지 제목의 조합입니다,하지만 응용 프로그램에 따라 당신의 호의에서 작동 할 수 있습니다 : 구글은 말한다. Google 웹 로그 분석에서

: 행동> 사이트 콘텐츠에

이동> 모든 페이지. 고유 한 페이지 뷰별로 정렬하십시오. pageLoadTime)를 페이지 대신 대부분의 매일 방문 : GAv4의 API

{ 
    "reportRequests": [ 
    { 
     "viewId": "VIEW_ID", 
     "dateRanges": [ 
     { 
      "startDate": "30daysAgo", 
      "endDate": "yesterday" 
     } 
     ], 
     "metrics": [ 
     { 
      "expression": "ga:uniquePageViews" 
     } 
     ], 
     "dimensions": [ 
     { 
      "name": "ga:pagePath" 
     } 
     ], 
     "pageSize": 3, 
     "orderBys": [ 
     { 
      "fieldName": "ga:uniquePageViews", 
      "sortOrder": "DESCENDING" 
     } 
     ] 
    } 
    ] 
} 

2) 또한이 세 가지 빠른 로딩 (GA를 얻을 수 있습니다에서

? 이것은 정렬 척도와 관련하여 ASC가 아니라 DESC 정렬을 필요로합니다.

예,이 역시 가능하다. 그러나 ga:avgPageLoadTimega:pageLoadTime (전체 페이지 뷰 수)의 총 시간으로 사용하고 싶을 것입니다. Google 웹 로그 분석에서

: 행동에

이동> 사이트 속도> 페이지 시간. 숫자 열을 평균값으로 변경하십시오. 페이지로드 시간 (초) 및이 열을 기준으로 정렬합니다. 그것은 주로보다는 관심의 페이지를 이상치를 데리러로 GAv4의 API에서

{ 
    "reportRequests": [ 
    { 
     "viewId": "VIEWID", 
     "dateRanges": [ 
     { 
      "startDate": "30daysAgo", 
      "endDate": "yesterday" 
     } 
     ], 
     "metrics": [ 
     { 
      "expression": "ga:uniquePageViews" 
     } 
     ], 
     "dimensions": [ 
     { 
      "name": "ga:pagePath" 
     } 
     ], 
     "pageSize": 3, 
     "orderBys": [ 
     { 
      "fieldName": "ga:avgPageLoadTime", 
      "sortOrder": "ASCENDING" 
     } 
     ] 
    } 
    ] 
} 

그러나이 보고서는 너무 도움이되지 않을 수 있습니다. 이 호출을 다른 호출과 결합하여 1) 고유 한 페이지 뷰로 n 페이지를 검색하고 2) 이것을 페이지로드 시간 호출의 필터로 사용하십시오.(googleAnalyticsR를 사용하여 R에서) 예를 들어

:

1) 
#retrieve the top 100 pages (ranked via unique pageviews) 
test <- google_analytics_4(VIEW_ID, 
    date_range = c("30daysAgo", "yesterday"), 
    metrics = "uniquePageviews", 
    dimensions = "pagePath", 
    max=100, #this is the top n pages 
    order = order_type("uniquePageviews", sort_order=c("DESCENDING"),orderType = c("VALUE"))) 

2) 
#call the top 3 pages via avgPageLoadTime 
test2 <- google_analytics_4(VIEW_ID, 
    date_range = c("30daysAgo", "yesterday"), 
    metrics = "avgPageLoadTime", 
#But only for the top 100 pages (ranked via unique pageviews). 
#filterExpression = uniquePageViews is greater then the unique pageviews 
#of the 100th ranked page. 
    filtersExpression=paste("ga:uniquePageViews>",tail(test$uniquePageviews, 1), sep=""), 
    dimensions = "pagePath", 
    max=3, 
    order = order_type("avgPageLoadTime", sort_order=c("ASCENDING"),orderType = c("VALUE"))) 

업데이트 : 당신이 달성하려고하는 무엇

은 단일 쿼리 할 수 ​​없습니다.

결과의 순서는 쿼리하려는 날과 관련이 있습니다.

피벗 테이블은 페이지 단위로 피벗하고 30 개의 열을 가질 수 있지만, 일일 상위 3 개 페이지가 아닌 상위 3 개 페이지의 일일 트래픽을 표시합니다.

원하는 결과를 얻으려면 마지막 x 일 동안 루프를 실행하여 관심 항목에 대한 상위 3 개 결과를 호출해야합니다.

+0

답해 주셔서 감사합니다. 그러나 첫 번째 쿼리는 세 개의 항목 만 반환합니다 (페이지 크기가 3이므로). 하지만 하루에 상위 3 개 항목을 쿼리하여 한 달 동안 90 행을 얻고 싶었습니다. 나는 페이징을 피할 필요가있다. 내 문제에 대한 혼란스러운 설명에 대해 유감스럽게 생각합니다. 또한'gal : pagePath'를 예로 든 것으로, 가능한 한 단일 쿼리에서 각 일별 (한도 (예 : 3)) 별 다른 측정 항목별로 정렬 된 서로 다른 호환 가능한 측정 항목을 쿼리하고 싶습니다. –

+0

업데이트를 제공했습니다. 어떻게 이것을 구현하려고합니까? – sdhaus

+0

매일 또는 매 n 번째 요일을 쿼리하고 보간합니다. 시간과 인내심에 감사드립니다. 현상금이 끝날 때까지이 질문을 열어 둘 것이며, 아무도 해결책을 제시 할 수 없다면 대답을 받아 들일 수 있습니다. –