【pandas】函数映射:map() /apply() /applymap()

一、map()

import pandas as pd
import numpy as np
df = pd.DataFrame({key1 : [a, a, b, b, a],
                   key2 : [one, two, one, two, one],
                   data1 : np.arange(5),
                   data2 : np.arange(5,10)})

技术图片

map()将一个自定义函数应用于Series结构中的每个元素(elements)。eg:

技术图片

所以map()可以对每一列的series元素进行处理,但是下述会报错:

技术图片

两列之间的加法不支持,因为涉及到的是列,而不是具体的元素。

二、apply()

作用于行或列。

 技术图片

三、applymap()

它可以作用dataframe里的所有元素

技术图片