Python中的apply、map、applymap
小小程序员ol 人气:3一、总结
apply
—— 应用在dataFrame
上,用于对row
或者column
进行计算applymap
—— 应用在dataFrame
上,元素级别的操作map
——python
系统自带函数,应用在series
上, 元素级别的操作
二、实操对比
构建测试数据框:
import pandas as pd import numpy as np df = pd.DataFrame(np.random.randint(0, 10, (4, 3)), columns=list('abc'), index=range(4)) df ''' a b c 0 5 4 8 1 7 5 2 2 1 2 2 3 1 6 2 '''
apply
作用在 dataframe
上的一行或者一列上
#Python学习交流群:531509025 # 默认按列操作 axis=0 # 求每列的最大值、最小值之差 df.apply(lambda x: x.max() - x.min()) # axis=0 # 求每行的最大值、最小值之差 df.apply(lambda x: x.max() - x.min(), axis=1)
applymap
作用在 dataframe
的每一个元素上
# 偶数放大10倍 df.applymap(lambda x: x*10 if x%2 == 0 else x)
map
函数作用在 series
上的每一个元素
# 单独的序列 df['b'].map(lambda x: 1 if x%2 == 0 else 0)
总的来说,要对数据进行应用函数操作时,考虑数据结构是 DataFrame
还是 Series
,再考虑是要按行执行还是按列执行,进行函数的选择。
加载全部内容