Python – 使用外连接合并Pandas DataFrame
要合并Pandas DataFrame,请使用merge()函数。设置merge()函数中的“how”参数实现DataFrames的外连接,即 –
how = “outer”
首先,让我们用别名导入pandas库 –
import pandas as pd
然后我们创建DataFrame1 –
dataFrame1 = pd.DataFrame(
{
"汽车": ['宝马', '雷克萨斯', '奥迪', '野马', '宾利', '捷豹'],
"销量": [100, 150, 110, 80, 110, 90]
}
)
然后我们创建DataFrame2 –
dataFrame2 = pd.DataFrame(
{
"汽车": ['宝马', '雷克萨斯', '特斯拉', '野马', '梅赛德斯', '捷豹'],
"注册价格": [7000, 1500, 5000, 8000, 9000, 6000]
}
)
使用公共列Car和”how”参数中的”outer”实现外连接合并DataFrames –
mergedRes = pd.merge(dataFrame1, dataFrame2, on ='汽车', how ="outer")
更多Pandas相关文章,请阅读:Pandas 教程
示例
以下是代码 –
import pandas as pd
# 创建DataFrame1
dataFrame1 = pd.DataFrame(
{
"汽车": ['宝马', '雷克萨斯', '奥迪', '野马', '宾利', '捷豹'],
"销量": [100, 150, 110, 80, 110, 90]
}
)
print"DataFrame1 ...\n",dataFrame1
# 创建DataFrame2
dataFrame2 = pd.DataFrame(
{
"汽车": ['宝马', '雷克萨斯', '特斯拉', '野马', '梅赛德斯', '捷豹'],
"注册价格": [7000, 1500, 5000, 8000, 9000, 6000]
}
)
print"\nDataFrame2 ...\n",dataFrame2
# 使用公共列Car和"how"参数中的"outer"实现外连接合并DataFrames
mergedRes = pd.merge(dataFrame1, dataFrame2, on ='汽车', how ="outer")
print"\n外连接合并后的数据...\n", mergedRes
输出结果
这将产生以下输出 –
DataFrame1 ...
汽车 销量
0 宝马 100
1 雷克萨斯 150
2 奥迪 110
3 野马 80
4 宾利 110
5 捷豹 90
DataFrame2 ...
汽车 注册价格
0 宝马 7000
1 雷克萨斯 1500
2 特斯拉 5000
3 野马 8000
4 梅赛德斯 9000
5 捷豹 6000
外连接合并后的数据...
汽车 销量 注册价格
0 宝马 100.0 7000.0
1 雷克萨斯 150.0 1500.0
2 奥迪 110.0 None
3 野马 80.0 8000.0
4 宾利 110.0 None
5 捷豹 90.0 6000.0
6 特斯拉 None 5000.0
7 梅赛德斯 None 9000.0
极客教程