DataFrame由已知列数据计算生成新列的方法

两种方法

 

方法一:

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']))
 

 

推荐方法一

你可能感兴趣的:(Python)