如何基于列名合并DataFrame?Python3使用pandas实现两个数据表合并
Python3 + pandas 合并两个DataFrame实现方案
首先确认已安装pandas,未安装可执行pip install pandas完成安装。
具体实现代码如下:
import pandas as pd # 读取你的两个数据表,以下是示例构造代码,实际使用替换为你的读取逻辑 # 比如读取csv用df1 = pd.read_csv("表1路径.csv"),读取excel用df1 = pd.read_excel("表1路径.xlsx") df1 = pd.DataFrame({ "年份": [2018, 2019, 2020, 2021, 2022], "产量": [1200, 1560, 1430, 1890, 2100] }) df2 = pd.DataFrame({ "年份": [2018, 2019, 2020, 2021, 2022], "面积": [102, 123, 117, 135, 148] }) # 按公共字段「年份」合并两个表 # how参数可根据你的需求调整: # inner:仅保留两个表共有的年份数据(默认值) # outer:保留两个表所有的年份,缺失值自动填充NaN # left:保留df1的全部年份 # right:保留df2的全部年份 merge_result = pd.merge(df1, df2, on="年份", how="outer") # 验证结果 print(merge_result) # 如需导出到文件可执行对应方法,比如导出excel: # merge_result.to_excel("合并结果.xlsx", index=False)
如果两个表的年份字段名不一致,比如df1的字段是「年份」,df2的是「统计年份」,可以将merge代码修改为:
merge_result = pd.merge(df1, df2, left_on="年份", right_on="统计年份", how="outer")
内容的提问来源于stack exchange,提问作者kakashiOfSharingan
相关产品推荐
相关产品推荐

