使用Yandex.Direct统计信息将数据从DataFrame发送到BigQuery

在本文中,我将讨论如何使用BigQuery和Data Studio在一个地方将整个上下文中的统计信息引入

我需要可视化所有流量来源上的数据。

对于此任务,我使用Data Studio。 Google Ads正在以一种极好的方式被拉到那里,但是使用Yandex Direct,一切都变得更加复杂。

我为自己选择了半手动的统计数据统计方法:从计算机接收和发送统计数据。

我每天在DataFrame的各个部分中获取静态信息。



这很棒,因为pandas有一个pandas_gbq库,可以将DataFrames发送到BigQuery。

BigQuery中存储哪些统计信息


首先,让我们决定要发送统计信息的哪些部分。
由于我们可以在BigQuery中存储很多信息,因此我以天为单位发布了统计信息。

我们还需要考虑以下事实:由于广告系统由于点击而更新了旧的统计信息,因此至少需要获取一个月的统计数据才能进行重写。

因此,由于它经常是多余的,因此我暂时不使用针对自己的键的统计信息。
我将以哈萨克斯坦共和国为背景的每日统计数据为例。 (列:日期和PK)

接下来,我们将讨论如何修改DataFrame。

修改数据框



问题1


对于某些RC,我们将在行为因素和转化中获得空白字段



要解决此问题,您需要用“ 0”替换缺点。

f['Conversions'].replace(['--'],[0],inplace=True) f['CostPerConversion'].replace(['--'],[0],inplace=True) f['ConversionRate'].replace(['--'],[0],inplace=True) f['AvgPageviews'].replace(['--'],[0],inplace=True) f['BounceRate'].replace(['--'],[0],inplace=True) 

并分配一个数字数据类型。

 f[["Conversions","CostPerConversion","ConversionRate","AvgPageviews","BounceRate"]]=f[["Conversions","CostPerConversion","ConversionRate","AvgPageviews","BounceRate"]].apply(pd.to_numeric) 

问题2


添加一个单独的索引列。 如果我们发送这样一个DataFrame或使用dtipe查看数据类型,则会看到没有带日期的列。

要解决此问题,请创建一个将等于索引列的列。

 f['Date']=f.index 


获取下一个DataFrame



将DataFrame发送到BigQuery


 pandas_gbq.to_gbq(f,' .',project_id=' ',if_exists='replace') 

我们指出了DataFrame的名称,数据集的名称,文件的名称(它可能尚不存在),项目的名称以及如何记录文件(在我们的情况下,文件将被完全重写)。

我们在BigQuery中得到以下内容:



它仅用于可视化DataStudio中的数据。 结束码:

 f['Date']=f.index f['Conversions'].replace(['--'],[0],inplace=True) f['CostPerConversion'].replace(['--'],[0],inplace=True) f['ConversionRate'].replace(['--'],[0],inplace=True) f['AvgPageviews'].replace(['--'],[0],inplace=True) f['BounceRate'].replace(['--'],[0],inplace=True) f[["Conversions", "CostPerConversion","ConversionRate","AvgPageviews","BounceRate"]] = f[["Conversions", "CostPerConversion","ConversionRate","AvgPageviews","BounceRate"]].apply(pd.to_numeric) pandas_gbq.to_gbq(f, 'YD_Days.my_client_rk', project_id='my_project',if_exists='replace') 

感谢您的关注!

Source: https://habr.com/ru/post/zh-CN454172/


All Articles