基于某个column或某些columns做连接
连接时有4种方法how = [‘left’, ‘right’, ‘outer’, ‘inner’],默认值how=‘inner’
- how=‘inner’ 默认值,内连接(sql中的自然连接)。按参数on的值交,其实就是键的交集(数据块系统概论54页,详细)
- how=‘outer’ 外连接,按参数on的值并,并了之后其他特征上没有值的会NaN补
- how=‘left’ 左连接,是以第一个 DataFrame 为主进行的连接,第二个DataFrame作为补充
- how=‘right’ 右连接,是以第二个 DataFrame 为主进行的连接,第一个DataFrame作为补充
一个公共column
import pandas as pd
特殊:公共属性:key , 很巧,两个key的值(数量、内容)一模一样,那就很简单了,四种连接方式结果一模一样
left = pd.DataFrame({
'key': ['K0', 'K1', 'K2', 'K3'],
'A': ['A0', 'A1', 'A2', 'A3'],
'B': ['B0', 'B1', 'B2', 'B3']})
right = pd.DataFrame({
'key': ['K0', 'K1', 'K2', 'K3'],
'C': ['C0', 'C1', 'C2', 'C3'],
'D': ['D0', 'D1', 'D2', 'D3']})
print(left)
print(right)
A B key
0 A0 B0 K0
1 A1 B1 K1
2 A2 B2 K2
3 A3 B3 K3
C D key
0 C0 D0 K0
1 C1 D1 K1
2