1.map()
在pandas中只有Series对象能用这个方法,DataFrame不能使用。作用是将自定义函数应用于每一个元素
案例如下:
df1 = pd.DataFrame({
'a':[1,2,3,4],
'b':['one','two','three','four'],
'c':'w'
})
df1
首先尝试将a列的数字都加上1
df1['a'] = df1['a'].map(lambda x : x+1)
其次,也可以使用字典将需要的元素修改
df1['c'] = df1['c'].map({'w':'x'})
2.apply()
apply()应用于DataFrame或者Series对象中,作用和map()相似
案例如下:
df2 = pd.DataFrame({
'a':[1,2,3,4],
'b':[10,20,30,40],
'c':'w',
'd':['one','two','three','four']
})
df2
先来尝试让a,b两列的每一个数字都加1
df2[['a','b']]=df2[['a','b']].apply(lambda x:x+1)
df2
也可以对两列进行相加
df2['sum'] = df2[['a','b']].apply(lambda x:x.sum(),axis=1)
df2