现有两张Excel表,分别是a和b表,用Python写代码实现b左连接a表,根据相同字段为串码字段,把b表要的某个字段数据从a表匹配过来
时间: 2023-12-10 19:42:56 浏览: 68
可以使用 pandas 库来实现左连接,具体代码如下:
```python
import pandas as pd
# 读取两个 Excel 表
a_df = pd.read_excel('a.xlsx')
b_df = pd.read_excel('b.xlsx')
# 左连接
result = pd.merge(b_df, a_df[['串码', '要的字段']], on='串码', how='left')
result.to_excel('result.xlsx', index=False) # 保存结果到 Excel 文件
```
其中 `pd.merge()` 函数实现了两个表的左连接,参数说明如下:
- `b_df` 和 `a_df[['串码', '要的字段']]`:要连接的两个 DataFrame;
- `on='串码'`:指定连接的字段为 `串码`;
- `how='left'`:指定左连接;
- `result.to_excel('result.xlsx', index=False)`:将结果保存到 Excel 文件中。
需要注意的是,如果两个表中的字段名不同,需要在 `pd.merge()` 函数中分别指定左表和右表的字段名,如:
```python
result = pd.merge(
b_df,
a_df[['串码', '要的字段']].rename(columns={'要的字段': '字段名'}),
left_on='串码',
right_on='串码',
how='left'
)
```
阅读全文