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

相关推荐
qq_381454994 天前
Python Pandas完全指南:从核心数据结构到实战操作
pandas
TUTO_TUTO4 天前
【python-词汇指标提取工具开发】自学笔记(1)-后端程序
人工智能·python·pandas·visual studio code
葱明撅腚5 天前
shapely空间数据分析
python·pandas·gis·shapely
忘忧记5 天前
pandas基础三
pandas
叫我:松哥7 天前
基于scrapy的网易云音乐数据采集与分析设计实现
python·信息可视化·数据分析·beautifulsoup·numpy·pandas
测试摆渡媛8 天前
Excel模板填充工具(工具&脚本分享)
python·数据挖掘·pandas
_Soy_Milk8 天前
【算法工程师】—— Python 数据分析
python·数据分析·numpy·pandas·matplotlib
Data-Miner8 天前
类似Pandas AI的几个数据分析处理智能体介绍
人工智能·数据分析·pandas
智航GIS10 天前
11.18 自定义Pandas扩展开发指南:打造你的专属数据分析武器库
python·数据分析·pandas
人工干智能12 天前
你知道 Pandas 中 `pd.get_dummies()` 会生成哪些独热的新列么?
大数据·pandas