我有两个字典列表,上面有印象数据和点击数据。例如:
[{'offerId': '1650', 'position': '15', 'clicksCount': 21}, {'offerId': '2323', 'position': '12', 'clicksCount': 14}, {'offerId': '2323', 'position': '14', 'clicksCount': 8}, {'offerId': '1621', 'position': '10', 'clicksCount': 7}]...
[{'offerId': '3207', 'position': '9', 'impressionsCount': 866}, {'offerId': '1650', 'position': '6', 'impressionsCount': 896}, {'offerId': '3207', 'position': '1', 'impressionsCount': 909}, {'offerId': '2323', 'position': '12'}]...
我需要把它合并在一起,通过offerId和position得到每个offer position的结果(点击和印象)
我尝试了此代码,但返回了错误的结果:
d = defaultdict(dict)
for l in (clicks_aggregated_data, impressions_aggregated_data):
for elem in l:
d[elem['offerId']].update(elem)
d[elem['position']].update(elem)
combined_data = list(d.values())
for model, group in groupby(combined_data, key=lambda x:x['offerId']):
print(list(group))
有人能帮我达到一张桌子上的效果吗(截图)
我希望这就是你想做的。用这两个dict创建
pandas dataframe
,然后求clicks
和impressions
的和。见下面的模型。让我知道它是否有效结果如下:
您可以尝试从
impressions_aggregated_data
创建查找dict,然后进行合并例如:
相关问题 更多 >
编程相关推荐