通常在使用该.apply()方法时,会传递一个只接受一个参数的函数.
def somefunction(group):
group['ColumnC'] == group['ColumnC']**2
return group
df.groupby(['ColumnA', 'ColumnB']).apply(somefunction)
Run Code Online (Sandbox Code Playgroud)
这里somefunction适用于每个group,然后返回.基本上我在这里使用这个例子.
我希望能够事先不指定列名ColumnC.将其作为参数传递somefunction会使代码更加灵活.
def somefunction(group, column_name):
group[column_name] == group[column_name]**2
return group
df.groupby(['ColumnA', 'ColumnB']).apply(somefunction)
Run Code Online (Sandbox Code Playgroud)
有没有办法让这项工作?我不能传递group到somefunction,因为那是奇迹般地完成.apply()的背景.