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函数的使用方法的攻略,希望对你有所帮助。