【发布时间】:2018-08-25 18:30:47
【问题描述】:
我有一个df 的样子,
A B C D
2017-10-01 2017-10-11 M 2017-10
2017-10-02 2017-10-03 M 2017-10
2017-11-01 2017-11-04 B 2017-11
2017-11-08 2017-11-09 B 2017-11
2018-01-01 2018-01-03 A 2018-01
A 和 B 的 dtype 是 datetime64,C 和 D 是 strings;
我喜欢groupby C 和 D 并得到 B 和 A 之间的区别,
df.groupby(['C', 'D']).apply(lambda row: row['B'] - row['A'])
但我不知道如何对每个组中的这些差异求和并将值分配给一个新列,比如E,可能在一个新的df 中,
C D E
M 2017-10 11
M 2017-10 11
B 2017-11 4
B 2017-11 4
A 2018-01 2
【问题讨论】:
-
给定示例的预期输出是什么?
-
当你
groupby时你想对A和B列的差异应用什么函数
标签: python python-3.x pandas dataframe pandas-groupby