简述
pandas中的apply、map、applymap都是利用lambda函数对DataFrame中的数据进行处理,几个方法之间的异同如下:
- pandas的两种数据结构即dataframe和series 中都可以使用apply方法,dataframe中的apply方法需要指定axis参数(axis默认为0即使用lambda x 之后的x为按列索引获取的series),可以使用聚合函数求得每一列中的最大值max、最小值min、均值mean、计数count、求和sum等,series中的apply方法与map方法一样,都是作用于单个元素,可以对单个元素进行处理,注意此处不可以进行聚合处理,因为其作用对象为单个元素;
- series中使用apply(lambda x: func(x))即对该series中的每一个元素进行函数func(x) 处理;
- series中使用map(map_dic)即对该series中的每一个元素进行字典映射(map_dic)处理;
- dataframe中使用applymap(lambda x:func(x))即对dataframe中的每一个元素进行函数func(x)处理。