如何将对象传递给熊猫数据框中的映射函数
问题描述:
我对此很陌生,因此非常感谢任何帮助。如何将对象传递给熊猫数据框中的映射函数
我想添加一个新的列到数据框中,这是数据框和python对象中的两个值的函数。
的格式如下:
df['col_3'] = list(map(function, df['col_1'], df['col_2'],instance_of_class))
def function(a,b,instance):
return a + b + instance_of_class.attribute
其中参数之一必须是类的一个实例。
当我这样做时,python抛出一个错误,该对象是不可迭代的,我假设这是因为它只需要列表传递参数。不确定如何避免这种情况,而不会大幅放慢速度。谢谢!
答
这可以通过地图或应用来完成,但是由于您刚刚开始,为什么不保持简单?
col_3 = []
for c1, c2 in df[['col_1', 'col_2']].values:
c3_list.append(function(c1, c2, instance))
df['col_3'] = col_3