You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在pandas中按规则将两列替换为计算绝对值的单列

Pandas两列转单列存储差值绝对值的实现方法

你需要的n列是两列数值差的绝对值,下面是几种可行的实现方式:

  • 方法1:直接计算生成新数据框,代码最简洁
import pandas as pd

# 构造你的示例数据
df = pd.DataFrame({"n1": [10,25,8], "n2": [110,30,40]})

# 直接生成只有n列的新数据框
df = pd.DataFrame({"n": (df["n1"] - df["n2"]).abs()})
  • 方法2:在原数据基础上新增列后删除旧列,适合需要保留中间过程的场景
# 新增n列后删除原有两列
df["n"] = (df["n1"] - df["n2"]).abs()
df = df.drop(columns=["n1", "n2"])
  • 方法3:用apply逐行计算,适合逻辑更复杂的拓展场景
df["n"] = df.apply(lambda row: abs(row["n1"] - row["n2"]), axis=1)
df = df.drop(columns=["n1", "n2"])

推荐优先使用方法1或方法2,pandas向量化运算的执行效率远高于逐行的apply操作。

内容的提问来源于stack exchange,提问作者paDU

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.19 00:06:01