当前位置: 代码网 > it编程>前端脚本>Python > pandas DataFrame map方法的实现

pandas DataFrame map方法的实现

2025年05月06日 Python 我要评论
pandas2.2 dataframefunction application, groupby & window方法描述dataframe.apply(func[, axis, raw, &

pandas2.2 dataframe

function application, groupby & window

方法描述
dataframe.apply(func[, axis, raw, …])用于沿 dataframe 的轴(行或列)应用一个函数
dataframe.map(func[, na_action])用于对 dataframe 的每个元素应用一个函数

pandas.dataframe.map()

pandas.dataframe.map() 方法用于对 dataframe 的每个元素应用一个函数。它是最简单的逐元素操作方法,常用于数据转换或清洗。

方法签名

dataframe.map(func, na_action=none)

参数说明

参数类型描述
funcfunction应用在 dataframe 每个元素上的函数。
na_action{none, ‘ignore’}, default: none若为 'ignore',则跳过 nan 值,不对其应用 func

返回值

  • 返回一个新的 dataframe,其形状与原 dataframe 相同,每个元素是 func 应用后的结果。

示例

示例1:简单映射(如将每个元素转为字符串)

import pandas as pd

df = pd.dataframe({
    'a': [1, 2, 3],
    'b': [4, 5, 6]
})

# 将每个元素转换为字符串
result = df.map(str)
print(result)

输出:

   a  b
0  1  4
1  2  5
2  3  6

示例2:自定义函数映射(如加10)

# 对每个元素加10
result = df.map(lambda x: x + 10)
print(result)

输出:

    a   b
0  11  14
1  12  15
2  13  16

示例3:使用 na_action='ignore' 忽略 nan 值

import numpy as np

df_with_nan = pd.dataframe({
    'a': [1, np.nan, 3],
    'b': [np.nan, 5, 6]
})

# 只对非 nan 元素加1
result = df_with_nan.map(lambda x: x + 1, na_action='ignore')
print(result)

输出:

     a    b
0  2.0  nan
1  nan  6.0
2  4.0  7.0

总结

  • map() 是对 dataframe 中的每个元素进行一对一变换的理想工具。
  • 支持跳过 nan 值进行映射。
  • 常用于格式转换、数值变换等场景。

到此这篇关于pandas dataframe map方法的实现的文章就介绍到这了,更多相关pandas dataframe map内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网! 

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com