我正在尝试应用一个自定义函数,该函数将两个参数应用于GROUPBYDATAFRAME中的特定两列
我已经尝试了apply和groupby dataframe,但欢迎任何建议
我有以下数据帧:
id y z
115 10 820
115 12 960
115 13 1100
144 25 2500
144 55 5500
144 65 960
144 68 6200
144 25 2550
146 25 2487
146 25 2847
146 25 2569
146 25 2600
146 25 2382
我想应用一个带有两个参数的自定义函数,并通过id得到结果
def train_logmodel(x, y):
##.........
return x
data.groupby('id')[['y','z']].apply(train_logmodel)
TypeError: train_logmodel() missing 1 required positional argument: 'y'
我想知道如何传递'y'和'z',以便通过每个id估计所需的列'x'
预期输出示例:
id x
115 0.23
144 0.45
146 0.58
这和问题有点不同:How to apply a function to two columns of Pandas dataframe
在这种情况下,我们必须处理groupby数据帧,它的工作原理与数据帧略有不同
提前谢谢
我不知道你的
train_logmodel
函数,这里只能给出一个一般的例子。您的函数接受一个参数,从该参数可以得到函数中的列:结果:
相关问题 更多 >
编程相关推荐