zoukankan      html  css  js  c++  java
  • Python函数中apply、map、applymap的区别

    一、总结

    • 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 ,再考虑是要按行执行还是按列执行,进行函数的选择。

    结尾给大家推荐一个非常好的学习教程,希望对你学习Python有帮助!

    Python基础入门教程推荐:更多Python视频教程-关注B站:Python学习者

    [video(video-WX5IrDgs-1634800181977)(type-bilibili)(url-https://player.bilibili.com/player.html?aid=847801620)(image-https://img-blog.csdnimg.cn/img_convert/5ff15db56683729c38ee1547ef0bf3a9.png)(title-【Python教程】全网最容易听懂的1000集python系统学习教程(答疑在最后四期,满满干货))]

    Python爬虫案例教程推荐:更多Python视频教程-关注B站:Python学习者

    [video(video-1Ue5otke-1634800187124)(type-bilibili)(url-https://player.bilibili.com/player.html?aid=372208936)(image-https://img-blog.csdnimg.cn/img_convert/3abe5e4377a0a5f8b72a20ead4d640bb.png)(title-2021年Python最新最全100个爬虫完整案例教程,数据分析,数据可视化,记得收藏哦)]

  • 相关阅读:
    反射&异常
    成员方法
    继承&多态
    面向对象
    常用模块
    软件目录结构规范
    内置函数
    生产器&迭代器
    装饰器
    函数
  • 原文地址:https://www.cnblogs.com/python960410445/p/15463099.html
Copyright © 2011-2022 走看看