假设我有下表:
import pandas as pd
data = pd.DataFrame({
'Group':['A','A','A','A','B','B']
, 'Month':[1,2,3,4,1,2]
, 'Value':[100,300,700,750, 200,400]
})
Run Code Online (Sandbox Code Playgroud)
我想使用 pandas 中的 groupby 和转换函数来创建一个新列,该列等于第 2 个月每个组的值。
结果应如下所示:
import pandas as pd
data = pd.DataFrame({
'Group':['A','A','A','A','B','B']
, 'Month':[1,2,3,4,1,2]
, 'Value':[100,300,700,750, 200,400]
, 'Desired_Result':[300,300,300,300,400,400]
})
Run Code Online (Sandbox Code Playgroud)
似乎应该有一种直接的方法可以通过 groupby 和 Transform 来完成此任务,但还没有找到。