【Pandas】pandas DataFrame abs

Pandas2.2 DataFrame

Computations descriptive stats

方法 描述
DataFrame.abs() 用于返回 DataFrame 中每个元素的绝对值

pandas.DataFrame.abs()

pandas.DataFrame.abs() 方法用于返回 DataFrame 中每个元素的绝对值。该方法适用于包含数值型数据的 DataFrame,对负数取正,正数保持不变。


一、方法签名
python 复制代码
DataFrame.abs()
参数说明:
  • 无参数。
返回值:
  • 返回一个新的 DataFrame,其形状与原 DataFrame 相同,其中每个元素是原元素的绝对值。

二、示例及结果
示例1:基本使用
python 复制代码
import pandas as pd

df = pd.DataFrame({
    'A': [-1, -2, 3],
    'B': [4, -5, -6]
})

result = df.abs()
print(result)

输出:

复制代码
   A  B
0  1  4
1  2  5
2  3  6

解释:

  • 所有负数被转换为正数,正数保持不变。

示例2:包含浮点数和负零
python 复制代码
df = pd.DataFrame({
    'X': [-0.1, 2.5, -3.7],
    'Y': [0, -10.3, 15.2]
})

result = df.abs()
print(result)

输出:

复制代码
     X     Y
0  0.1   0.0
1  2.5  10.3
2  3.7  15.2

解释:

  • 浮点数的绝对值也被正确计算。
  • -0.0 被转换为 0.0

示例3:处理 NaN
python 复制代码
import numpy as np

df = pd.DataFrame({
    'P': [-1, np.nan, 3],
    'Q': [np.nan, -5, -6]
})

result = df.abs()
print(result)

输出:

复制代码
     P    Q
0  1.0  NaN
1  NaN  5.0
2  3.0  6.0

解释:

  • NaN 值保持不变,不会参与计算。

三、适用场景
场景 描述
数据清洗 将负值统一转为正值,如温度、误差等数据。
特征工程 在机器学习中构造新特征时,去除符号影响。
统计分析 计算偏差、误差等指标时,仅关注大小不关心方向。

四、注意事项
  • 只能作用于数值型列(int、float),非数值类型列会被忽略或抛出错误。
  • 不会修改原始 DataFrame,而是返回一个新的对象。
  • NaN 值不做处理,保留原样。

五、总结
特性 描述
功能 返回 DataFrame 每个元素的绝对值
适用类型 数值型(int、float)
NaN 处理 保留原值
是否修改原数据 否,返回新 DataFrame

abs() 是一个简单但实用的方法,常用于数据预处理和特征工程中,帮助消除数值的符号影响。

相关推荐
李昊哲小课15 天前
PyArrow 完整教程
大数据·数据分析·pandas·pyarrow
云和数据.ChenGuang15 天前
T5大模型
人工智能·机器人·pandas·数据预处理·数据训练
MATLAB代码顾问17 天前
Python Pandas数据分析入门指南
python·数据分析·pandas
themingyi18 天前
Abaqus2024安装python包pandas
开发语言·python·pandas
一晌小贪欢19 天前
第26节:自动化办公——利用 Python 自动生成动态分析报告 (PPT/PDF)
开发语言·python·数据分析·自动化·powerpoint·pandas·数据可视化
留白_19 天前
pandas练习题
python·数据分析·pandas
留白_19 天前
pandas进阶学习
学习·pandas
abcy07121319 天前
python pandas csv异步后台清洗前端优先返回成功信息
前端·python·pandas
留白_21 天前
pandas文件读取与存储
开发语言·python·pandas
SilentSamsara21 天前
特征工程系统方法论:编码、分箱、交互特征与特征选择
开发语言·人工智能·python·机器学习·青少年编程·信息可视化·pandas