apply、applymap、map的区别
apply
apply()将一个函数作用于DataFrame中的每个行或者列
1 # 用apply来对列data1,data2进行相加 2 df.loc['total'] = df[['data1','data2']].apply(lambda x : x.sum(),axis=0)
applymap
将函数做用于DataFrame中的所有元素(elements)
1 # 在所有元素前面加个字符A 2 def addA(x): 3 return "A" + str(x ) 4 df.applymap(addA)
map
map() 是一个Series的函数,DataFrame结构中没有map()。map()将一个自定义函数应用于Series结构中的每个元素(elements)。
1 # 用map来对列data1改成保留小数点后三位 2 df['data1'] = df['data1'].map(lambda x : "%.3f"%x) 3 4 # 用map把key1的a改成c,b改成d 5 df['key1'] = df['key1'].map({'a':'c',"b":"d"})