文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

一文弄懂Apply、Map和Aplymap三种函数的区别

2024-12-24 17:51

关注

[[322964]]

首先,来个总结

apply

先从apply开始,当然最权威的说明还是要看官方文档:

apply是沿DataFrame的轴应用功能,传递给函数的对象是Series对象,其索引为DataFrame的索引(axis = 0'')或DataFrame的列(axis = 1'')

当然比较常用的还是DataFrame.apply(),下边我们通过例子来说明一下帮助理解.

首先有一个表:

 

 

apply应用到DataFrame中

如果我们求一下每一列或者每一列的极差,注意axis参数的设置,一般默认为0,即求每一列的极值

 

 

apply的参数可以直接接收现成的函数,也可以接收自定义函数,比如自定义的匿名函数:

 

 

通过对轴信息的设置,也可以求每一行的极差:

 

 

需要注意的是结果的索引,能够很明显的告诉大家现在求的是行极差还是列极差,如果是行极差,索引是行标签,如果是列极差,索引是列名。

另外,对整个DataFrame运用apply的时候,要保证所有的字段都是符合作为参数的函数要求才可以,比如在列子中求极值得保证所有字段都是数值型才行,如果整个DataFrame不能满足要求,可以把符合要求的字段切出来再应用apply。

如果有需要,也可以把求的结果添加到原表当中。

apply应用到Series中

如这个例子,将A列的所有元素转换数据类型,从整型转换成浮点型:

 

 

总结一下,apply运用到整个DataFrame中可以执行整列或者整行的运算,运用到Series中,执行的是对每个元素的运算。

这个运算,map也可以实现。

map

首先,还是看下官方文档是怎么说的:

官方指定,map是应用于Seriesd 的,参数可以是函数也可以字典。

首先,还是要有一个表:

 

 

现在需要将性别转换成0和1,女为0,男为1,这个时候千万不要写循环啊,map()可以轻松实现,先来试试函数的形式:

def gender(x): G = 1 if x == "男" else 0 return G

 

 

map的参数除了可以是参数,也可以是字典,这和apply对参数的要求不同:

 

 

applymap

最后来看一下applymap,还是先搬上官方文档:

简单说,applymap是把函数应用到DataFrame中的每个元素上的,要和apply对整列或者整行进行的操作区分开啊,apply想要直接对每个元素进行操作,得单独提取出Series才可以实现,不能直接再整个DataFrame上执行。下边来看个例子。

还是开头的那个表:

 

 

现在要把每个元素的数据类型都转换成浮点型,applymap()就派上用场了:

 

 

最后再总结一下:

apply:

map

applymap

常用的用法呢就是前边举的例子中的那些了,希望这边文章能帮助大家分清apply、map和applymap并能灵活运用它们。

来源:今日头条内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯