我们在谷歌分析数据API v1Beta中定义了自定义维度,用于从谷歌分析GA4帐户中提取数据。我正在尝试使用Python获取关于日期、活动ID、活动名称和事件名称的事件计数指标。我想知道不同活动名称中不同事件名称的事件计数是多少。是否有任何工作围绕如何获取此数据?
import pandas as pd
import numpy as np
from google.analytics.data_v1beta import BetaAnalyticsDataClient
from google.analytics.data_v1beta.types import DateRange
from google.analytics.data_v1beta.types import Dimension
from google.analytics.data_v1beta.types import Metric
from google.analytics.data_v1beta.types import RunReportRequest
client = BetaAnalyticsDataClient()
## Format Report - run_report method
def format_report(request):
response = client.run_report(request)
# Row index
row_index_names = [header.name for header in response.dimension_headers]
row_header = []
for i in range(len(row_index_names)):
row_header.append([row.dimension_values[i].value for row in response.rows])
row_index_named = pd.MultiIndex.from_arrays(np.array(row_header), names = np.array(row_index_names))
# Row flat data
metric_names = [header.name for header in response.metric_headers]
data_values = []
for i in range(len(metric_names)):
data_values.append([row.metric_values[i].value for row in response.rows])
output = pd.DataFrame(data = np.transpose(np.array(data_values, dtype = 'f')),
index = row_index_named, columns = metric_names)
return output
request = RunReportRequest(
property='properties/'+property_id,
dimensions=[
Dimension(name="date"),
Dimension(name="eventName"),
Dimension(name="campaignId"),
Dimension(name="campaignName")
],
metrics=[
Metric(name="eventCount"),
],
date_ranges=[DateRange(start_date="2023-01-22", end_date="2023-01-25")],
)
错误:
无效参数:400请删除eventCount以使请求兼容。请求的维度和指标不兼容。要了解更多信息,请参阅https://ga-dev-tools.web.app/ga4/dimensions-metrics-explorer/
error
1条答案
按热度按时间iibxawm41#
正如错误消息所述,并非所有维度和指标都是可满足的。
在您的情况下,eventcount与
campaignId
或campaignName
不兼容。因此,要使此请求生效,您必须删除eventcount
,或者删除campaignId
或campaignName
我想我要说的是,你不能提出这个要求,数据不存在。