关键词

如何在Pandas中从另一个DataFrame中添加列

Pandas 中,可以通过将另一个 DataFrame 的列合并到当前 DataFrame 中来添加列。通常使用 merge() 或 join() 方法来合并列。

下面是一个示例过程:

首先,我们创建两个 DataFrame,一个包含员工的姓名和 ID,另一个包含员工的工资和其他信息:

import pandas as pd

# 创建包含员工姓名和 ID 的 DataFrame
df1 = pd.DataFrame({
    "姓名": ["张三", "李四", "王五"],
    "ID": [101, 102, 103]
})

# 创建包含员工工资和其他信息的 DataFrame
df2 = pd.DataFrame({
    "ID": [101, 102, 103],
    "工资": [3000, 4000, 5000],
    "部门": ["销售", "技术", "财务"]
})

现在我们有两个 DataFrame,我们需要将 df2 的工资和部门信息添加到 df1 中。我们可以使用 merge() 方法来实现这一点:

# 使用 merge() 方法将 df2 的工资和部门信息添加到 df1 中
df = pd.merge(df1, df2, on="ID")

# 显示结果
print(df)

输出结果如下:

   姓名   ID    工资  部门
0  张三  101  3000  销售
1  李四  102  4000  技术
2  王五  103  5000  财务

在这个例子中,我们使用 merge() 方法将 df2 的工资和部门信息合并到 df1 中。通过指定 on="ID" 所以两个 DataFrame 会根据 ID 列进行合并。

如果要将 df2 中的所有列都添加到 df1 中,可以使用 join() 方法。例如:

# 使用 join() 方法将 df2 中的所有列都添加到 df1 中
df = df1.join(df2.set_index("ID"), on="ID")

# 显示结果
print(df)

输出结果如下:

   姓名   ID    工资  部门
0  张三  101  3000  销售
1  李四  102  4000  技术
2  王五  103  5000  财务

在这个例子中,我们使用 join() 方法将 df2 中的所有列都添加到 df1 中。首先,我们使用 set_index() 将 df2 的 ID 列设置为索引。然后,我们使用 on="ID" 指定要按照 ID 列进行合并。通过这种方式,我们可以将 df2 的所有列添加到 df1 中。

希望这个例子对你有所帮助!

本文链接:http://task.lmcjl.com/news/17446.html

展开阅读全文