在 Python 的 Pandas 库中,我们可以根据需要自由地添加各种不同的函数,例如 lambda 函数、排序函数等。我们可以将 lambda 函数同时应用于 Pandas 数据框的列和行。
> 语法:lambda arguments: expression
>
> 这是一种匿名函数,我们可以立即传递它,而无需像定义完整的传统函数那样定义名称或其他任何内容。
以下是一些方法和途径,我们可以通过它们将 lambda 函数应用于 Pandas:
- 在单列上使用 Dataframe.assign()
- 在多列上使用 Dataframe.assign()
- 在单行上使用 Dataframe.apply()
- 在多行上使用 Dataframe.apply()
- 同时在多行和多列上使用 Lambda 函数
在单列上使用 Dataframe.assign()
在这个例子中,我们将把 lambda 函数 Dataframe.assign() 应用于单列。该函数应用于 ‘Total_Marks‘ 列,并借助它形成了一个新列 ‘Percentage‘。
Python
CODEBLOCK_4ec089fd
输出:
!Dataframe.assign() on a Single ColumnDataframe.assign() on a Single Column
在多列上使用 Dataframe.assign()
在这个例子中,我们将把 lambda 函数 Dataframe.assign() 应用于多列。lambda 函数应用于 3 列,即 ‘Field1‘、‘Field2‘ 和 ‘Field_3‘。
Python
CODEBLOCK_91eb3d49
输出:
!Dataframe.assign() on Multiple ColumnsDataframe.assign() on Multiple Columns
在单行上使用 Dataframe.apply()
在这个例子中,我们将把 lambda 函数 Dataframe.apply() 应用于单行。lambda 函数应用于以 ‘d‘ 开头的行,并将与其对应的所有值进行平方运算。
Python
CODEBLOCK_ecceb769
输出:
!Dataframe.apply() on a Single RowDataframe.apply() on a Single Row
在多行上使用 Dataframe.apply()
在这个例子中,我们将使用 Dataframe.apply() 将 lambda 函数应用于多行。lambda 函数应用于以 ‘a‘、‘e‘ 和 ‘g‘ 开头的 3 行。
Python
“
目录
importing pandas and numpylibraries
import pandas as pd
import numpy as np
creating and initializing a nested list
values_list = [[15, 2.5, 100], [20, 4.5, 50], [25, 5.2, 80],
[45, 5.8, 48], [40, 6.3, 70], [41, 6.4, 90],
[51, 2.3, 111]]
creating a pandas dataframe
df = pd.DataFrame(valueslist, columns=[‘Field1‘, ‘Field2‘, ‘Field3‘],
index=[‘a‘, ‘b‘, ‘c‘, ‘d‘, ‘e‘, ‘f‘, ‘g‘])
Apply function numpy.square() to square
the values of 3 rows only i.e. with row
index name ‘a‘, ‘e‘ and ‘g‘ only
df = df.ap