📜  将 lambda 函数应用于多列 pandas - Python (1)

📅  最后修改于: 2023-12-03 14:53:43.932000             🧑  作者: Mango

将 Lambda 函数应用于多列 Pandas 数据框

在 Pandas 中,Lambda 函数可用于对数据框的单个列进行操作。但是,如果您需要在多个列上执行相同的操作,Lambda 函数也可以非常有用。下面是一个演示如何使用 Lambda 函数在多个 Pandas 数据框列上执行相同操作的示例。

创建 Pandas 数据框

首先,我们将创建一个包含两个列的简单 Pandas 数据框。

import pandas as pd

data = {'column1': [1, 2, 3, 4],
        'column2': [10, 20, 30, 40]}

df = pd.DataFrame(data)
print(df)

输出:

   column1  column2
0        1       10
1        2       20
2        3       30
3        4       40
使用 Lambda 函数在多个列上执行操作

现在,我们将使用 Lambda 函数将两列中的所有值加倍。

df[['column1', 'column2']] = df[['column1', 'column2']].apply(lambda x: x*2)
print(df)

输出:

   column1  column2
0        2       20
1        4       40
2        6       60
3        8       80

在此代码中,我们使用 apply 方法将 Lambda 函数应用于 column1column2。Lambda 函数返回一个 Series 对象,其中每个元素都是输入对象的两倍。 apply 方法将此 Series 对象与 df[['column1', 'column2']] 数据框中的列进行对齐,并将每个列的值设置为输入列的两倍。

结论

使用 Lambda 函数将操作应用于多列 Pandas 数据框的方法非常灵活,并能够节省编写一遍又一遍重复代码的时间和精力。使用此技术,您可以轻松地在多个列中执行各种数据操作。