python的assign函数使用方法

  • Post category:Python

Python中的assign()函数是pandas库中DataFrame对象的一个方法。它主要用于将一列数据添加到DataFrame中。下面是一份完整的攻略。

assign 函数的语法

DataFrame.assign(**kwargs)

assign 函数的参数

  • **kwargs: dict / callable, 只接受关键字参数. 字典包括列名,值是相应的Series或数组或回调函数。如果回调函数,则会传入Series,并返回数组。返回值是新的DataFrame对象。

该方法返回修改后的DataFrame。如果原始的DataFrame未被更改,则此函数返回一个新的DataFrame。此函数可以接受一个字典作为输入,其中字典的键是要分配给DataFrame的新列的名称,而字典的值则是分配给这些新列的值。

assign 函数的示例

举两个例子:

import pandas as pd 

# 创建一个 DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6],})

# 使用 assign 函数,创建一个新的 DataFrame,该 DataFrame 将 C 列设置为 A 和 B 的总和
df_new = df.assign(C=df['A'] + df['B'])
print(df_new)

# 使用 assign 函数,创建一个新的 DataFrame,该 DataFrame 将 D 列设置为 A 和 B 列之差
df_new = df.assign(D=lambda x: x['A'] - x['B'])
print(df_new)

运行后,将会分别打印出以下两个DataFrame:

A  B  C
1  4  5
2  5  7
3  6  9

A  B  D
1  4 -3
2  5 -3
3  6 -3

第一个示例中,我们创建了一个原始的DataFrame,然后使用assign()函数,将 C 列分配为 A 和 B 列的总和。我们可以看到输出的新DataFrame包含了新的 C 列。

第二个示例中,我们将D列设置为A列减去B列的结果。我们使用lambda函数将减法操作传递给assign()方法。

以上就是python的assign函数的使用方法的攻略,希望对你有所帮助。