两种方法
方法一:
import numpy as np
df = pd.DataFrame ({'a' : np.random.randn(6), 'b' : ['foo', 'bar'] * 3, 'c' : np.random.randn(6)})
def my_test(a, b):
return a + b
df['newcol'] = df.apply(lambda col: my_test(col['a'], col['c']), axis=1)
print (df)
方法二:
map和lambda的搭配使用,可以将两个等长的序列进行运算,生成新的序列。利用这个方法,可以利用DataFrame中已知列的数据生成新列。具体如下:
df['new_col']=list(map(lambda x,y: function(x,y), df['col1'], df['col2']))
推荐方法一