知识点强化:applymap, apply
这部分是要对applymap, apply两个功能进行讲解。
orders = pd.read_csv('/data/orders.csv')
orders.head(2)
pd.set_option('display.max_rows', 100)
pd.set_option('display.max_columns', 100)
applymap方法:
applymap相当于一个DataFrame版本的map方法。
applymap函数映射的级别, 同样也是表格当中的每一个元素。
应用场景: 当我们有多个列想要同时进行某种函数映射的时候, 如果使用map一列一列操作显得过于繁琐, 这是使用applymap就可以一次性完成多个列的映射操作了!
练习: applymap应用练习:
首先提取买家应付货款, 买家应付邮费, 总金额, 买家实际支付金额四列, 命名成money_part。
然后将四列开头都添加上一个$符号。
money_part = orders[['买家应付货款', '买家应付邮费', '总金额', '买家实际支付金额']]
money_part
def f(x):
return '$'+str(x)
money_part.applymap(f)
apply方法:
Pandas的apply方法允许用户传递一个函数并将其应用于Series或DataFrame中的每个单个值。
当在Series中调用apply方法时, 函数映射级别为元素。
当在DataFrame中调用apply方法时, 需要设定沿哪个轴应用函数。函数的映射级别为DataFrame中的Series。
练习: apply应用练习:
提取买家应付货款, 买家应付邮费, 总金额, 买家实际支付金额四列,计算这四列每列的总计和。
money_part = orders[['买家应付货款', '买家应付邮费', '总金额', '买家实际支付金额']]
money_part
money_part.apply(np.sum,axis=0)