现有两个dataframe, d1 d2,如何讲d2中的列"country"按照两表对应共有的的列"code"添加到表d1,从而合成d3,给出代码示例
时间: 2024-02-12 16:30:04 浏览: 75
对dataframe进行列相加,行相加的实例
5星 · 资源好评率100%
可以使用 pandas 库中的 merge() 方法来合并两个 DataFrame,具体代码如下:
```python
import pandas as pd
# 创建示例 DataFrame
d1 = pd.DataFrame({'code': ['A', 'B', 'C', 'D'], 'value': [1, 2, 3, 4]})
d2 = pd.DataFrame({'code': ['B', 'C', 'D', 'E'], 'country': ['USA', 'China', 'Japan', 'Mexico']})
# 合并两个 DataFrame
d3 = pd.merge(d1, d2[['code', 'country']], on='code', how='inner')
print(d3)
```
输出:
```
code value country
0 B 2 USA
1 C 3 China
2 D 4 Japan
```
其中,merge() 方法的参数说明如下:
- d1:第一个 DataFrame;
- d2[['code', 'country']]:第二个 DataFrame 中需要合并的列;
- on='code':按照共有的列 code 进行匹配合并;
- how='inner':采用内连接方式合并,即只保留两个 DataFrame 中都存在的行。如果想要保留所有行可以选择 outer 连接方式。
阅读全文