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

相关推荐
liuweidong080220 小时前
【Pandas】pandas DataFrame ewm
pandas
数据系的公考小白3 天前
2025五一杯数学建模C题代码分享
python·数学建模·pandas·五一杯
get lend gua3 天前
Pandas 的透视与逆透视
机器学习·数据挖掘·pandas
跟着杰哥学Python3 天前
一文读懂Python之pandas模块
开发语言·python·pandas
xiaohanbao093 天前
day16 numpy和shap深入理解
python·学习·机器学习·信息可视化·numpy·pandas
CoderJia程序员甲4 天前
PandasAI:对话式数据分析新时代
ai·数据挖掘·数据分析·pandas·deepseek
真智AI5 天前
掌握 Pandas DataFrame 的复杂过滤技巧
python·pandas
engchina6 天前
如何在Dify沙盒中安装运行pandas、numpy
numpy·pandas·dify·代码节点
帮帮志7 天前
Python-pandas-操作Excel文件(读取数据/写入数据)及Excel表格列名操作详细分享
python·excel·pandas