迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

在 Pandas DataFrame 中两列相减

作者:迹忆客 最近更新:2024/04/21 浏览次数:

Pandas 可以处理非常大的数据集,并且有多种功能和操作可以应用到数据中。

其中一个简单的操作是对两列进行减法,并将结果存储在一个新的列中,这将在本教程中讨论。这个简单的任务可以通过多种方式来完成。我们将计算下面 DataFrame 中'a''d'列之间的差。

import pandas as pd

df = pd.DataFrame(
    [[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)

print(df)

输出:

    a  b   c   d
0  10  6   7   8
1   1  9  12  14
2   5  8  10   6

使用 __getitem__ 语法([])来做 Pandas 中的两列相减

两列相减的最简单方法是访问所需的列,并使用 __getitem__ 语法([])创建一个新列。例如:

import pandas as pd

df = pd.DataFrame(
    [[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)

df["d - a"] = df["d"] - df["a"]

print(df)

输出:

    a  b   c   d  d - a
0  10  6   7   8     -2
1   1  9  12  14     13
2   5  8  10   6      1

在 Pandas 中使用函数做两列相减

我们可以很容易地在 Pandas 中创建一个两列相减的函数,并使用 apply() 函数将其应用到 DataFrame 的指定列中。我们将为 apply() 函数提供参数 axis,并将其设置为 1,表示该函数应用于列。

import pandas as pd

df = pd.DataFrame(
    [[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)


def x(a, b):
    return a - b


df["d - a"] = df.apply(lambda f: x(f["d"], f["a"]), axis=1)

print(df)

输出:

    a  b   c   d  d - a
0  10  6   7   8     -2
1   1  9  12  14     13
2   5  8  10   6      1

由于列的减法是一个比较简单的操作,所以我们可以直接使用 lambda 关键字在 apply() 函数中创建简单的单行函数。

import pandas as pd

df = pd.DataFrame(
    [[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)

df["d - a"] = df.apply(lambda x: x["d"] - x["a"], axis=1)

print(df)

输出:

    a  b   c   d  d - a
0  10  6   7   8     -2
1   1  9  12  14     13
2   5  8  10   6      1

在 Pandas 中使用 assign() 方法做两列相减

DataFrame assign() 方法用于在执行某些操作后向 DataFrame 中添加一列。它返回一个新的 DataFrame,其中包含所有原始的和新的列。下面的例子将展示如何使用 assign() 方法减去两列。

import pandas as pd

df = pd.DataFrame(
    [[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)

df = df.assign(d_minus_a=df["d"] - df["a"])

print(df)

输出:

    a  b   c   d  d_minus_a
0  10  6   7   8         -2
1   1  9  12  14         13
2   5  8  10   6          1

上一篇:在 Pandas DataFrame 中按索引删除列

下一篇:没有了

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 Pandas 中加载 JSON 文件

发布时间:2024/04/21 浏览次数:97 分类:Python

本教程介绍了我们如何使用 pandas.read_json()方法将一个 JSON 文件加载到 Pandas DataFrame 中。

将 Pandas DataFrame 写入 CSV

发布时间:2024/04/21 浏览次数:174 分类:Python

本教程介绍了我们如何使用 pandas.DataFrame.to_csv()函数将 DataFrame 写入 CSV 文件。

拆分 Pandas DataFrame

发布时间:2024/04/21 浏览次数:115 分类:Python

本教程介绍了如何将一个 DataFrame 分割成多个较小的 DataFrame。

比较 Pandas DataFrame 对象

发布时间:2024/04/21 浏览次数:62 分类:Python

本教程介绍了我们如何在 Python 中比较 Pandas DataFrame 对象。比较 DataFrames 对检查 DataFrames 之间的差异非常有帮助。

Pandas 复制 DataFrame

发布时间:2024/04/21 浏览次数:117 分类:Python

本教程将介绍如何使用 DataFrame.copy()方法复制 DataFrame 对象,并探讨 DataFrame.copy()方法的使用。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便