如何使用Pandas将一个DataFrame的值复制到另一个并生成目标DataFrame?
Pandas实现两个DataFrame的合并操作
原始数据
df1
| A | B |
|---|---|
| 1 | x |
| 2 | y |
| 3 | z |
df2
| A | C | D |
|---|---|---|
| 1 | p | q |
| 3 | r | s |
| 4 | t | u |
目标结果
| A | B | C | D |
|---|---|---|---|
| 1 | x | p | q |
| 2 | y | NaN | NaN |
| 3 | z | r | s |
实现代码
使用Pandas的merge()方法执行左连接即可实现需求:
import pandas as pd # 基于A列左连接df1和df2 result_df = pd.merge(df1, df2, on='A', how='left')
代码说明
on='A':指定以A列为两个DataFrame的匹配键how='left':保留左表(df1)的所有行,右表(df2)中匹配的行合并至对应位置,无匹配的列自动填充NaN
如果需要将NaN替换为其他值(比如空字符串),可追加以下代码:
# 将NaN替换为空字符串 result_df = result_df.fillna('')
内容的提问来源于stack exchange,提问作者kevin
相关产品推荐
相关产品推荐

