python – 使用聚合列值合并具有不同列名的Dataframe

合并两个数据帧:我有两个数据帧需要合并一些标准,但我还没有弄清楚如何做到这一点?

df1 : 

id            positive_action    date             volume  
id_1          user 1                  2016-12-12       19720.735
              user 2                  2016-12-12       14740.800

df2 :
id            negative_action        date             volume  
id_1          user 1                  2016-12-12       10.000
              user 3                  2016-12-12       10.000     

I want : 

id            action        date             volume  
id_1          user 1         2016-12-12       19730.735
              user 2         2016-12-12       14740.800   
              user 3         2016-12-12       10.000

这里

>卷跨两个数据帧聚合
>合并ID,日期和(积极行动和消极行动合并在一起)

我如何实现这一目标?

解决方法

在将positive_action和negative_action列重命名为action之后,您还可以连接DataFrame,然后执行groupby.

df1.rename(columns={'positive_action':'action'},inplace=True)
df2.rename(columns={'negative_action':'action'},inplace=True)
pd.concat([df1,df2]).groupby(['id','action','date']).sum().reset_index()


     id  action        date     volume
0  id_1  user 1  2016-12-12  19730.735
1  id_1  user 2  2016-12-12  14740.800
2  id_1  user 3  2016-12-12     10.000

相关文章

功能概要:(目前已实现功能)公共展示部分:1.网站首页展示...
大体上把Python中的数据类型分为如下几类: Number(数字) ...
开发之前第一步,就是构造整个的项目结构。这就好比作一幅画...
源码编译方式安装Apache首先下载Apache源码压缩包,地址为ht...
前面说完了此项目的创建及数据模型设计的过程。如果未看过,...
python中常用的写爬虫的库有urllib2、requests,对于大多数比...