【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() 是一个简单但实用的方法,常用于数据预处理和特征工程中,帮助消除数值的符号影响。

相关推荐
倔强的小石头_3 小时前
Python 从入门到实战(十):Pandas 数据处理(高效搞定表格数据的 “瑞士军刀”)
人工智能·python·pandas
万粉变现经纪人10 小时前
Python系列Bug修复PyCharm控制台pip install报错:如何解决 pip install 网络报错 企业网关拦截 User-Agent 问题
网络·python·pycharm·beautifulsoup·bug·pandas·pip
Lucky高21 小时前
Pandas库实践1_预备知识准备
python·pandas
墨上烟雨1 天前
Pandas 数据结构 - Series
数据结构·pandas
狮智先生1 天前
【编程实践】PySide6 + Plotly + Pandas 开发HTML数据分析报告
程序人生·plotly·html·pandas
陈天伟教授2 天前
人工智能训练师认证教程(3)Pandas数据世界的军刀
人工智能·数据分析·pandas
我才是一卓2 天前
【pip】解决 pip install pandas 时 subprocess-exited-with-error 错误
pandas·pip
子夜江寒2 天前
pandas基础操作
学习·pandas
dazzle2 天前
《DataFrame可视化与高级方法》
python·pandas
王大傻09283 天前
Series的属性简介
python·pandas