分享

Python函数中apply、map、applymap的区别

 共同成长888 2023-03-06 发布于广东

2022-03-08 11:59小小程序员ol Python

这篇文章主要介绍了 Python函数中apply、map、applymap的区别 ,文章围绕 Python函数中apply、map、applymap的相关资料展开详细内容,需要的朋友可以参考一下

目录
  • 一、总结
  • 二、实操对比

一、总结

  • apply —— 应用在 dataFrame 上,用于对 row 或者 column 进行计算
  • applymap —— 应用在 dataFrame 上,元素级别的操作
  • map —— python 系统自带函数,应用在 series 上, 元素级别的操作

二、实操对比

构建测试数据框:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
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 上的一行或者一列上

?
1
2
3
4
5
6
7
8
9
10
11
12
13
#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 的每一个元素上

?
1
2
3
# 偶数放大10倍
df.applymap(lambda x: x*10 if x%2 == 0 else x)

map 函数作用在 series 上的每一个元素

?
1
2
3
# 单独的序列
df['b'].map(lambda x: 1 if x%2 == 0 else 0)

总的来说,要对数据进行应用函数操作时,考虑数据结构是 DataFrame 还是 Series ,再考虑是要按行执行还是按列执行,进行函数的选择。

到此这篇关于 Python函数中applymapapplymap的区别 的文章就介绍到这了,更多相关 Python中的apply、map、applymap内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://www.cnblogs.com/python960410445/p/15463099.html

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多