import pandas as pd # 1. 读取两个表的数据 data_info = pd.read_excel(r"C:\Users\Administrator\Desktop\student_information.xlsx") data_score = pd.read_excel(r"C:\Users\Administrator\Desktop\student_score.xlsm") # print(data_info.head()) # print(data_score.head()) # 2. 进行两个表的关联 # 只筛选出表二的部分相关列(学号,姓名,性别) df_info = data_info[['学号', '姓名', '性别']] # print(df_info) # 将两个表进行关联 df_merge = pd.merge(left=data_score, right=df_info, left_on='学号', right_on='学号') print(df_merge) # 3. 调整列的顺序 print(df_merge.columns) # 1. 将columns变成python的列表形式 new_columns = df_merge.columns.to_list() print(new_columns) # 2. 按逆序进行插入(因为插入的方式是,每次在学号后面插入,类似链表的头插法,需要把排在后面的先放入进行排序) for name in ['姓名', '性别'][::-1]: new_columns.remove(name) new_columns.insert(new_columns.index('学号')+1, name) print(new_columns) # 按照new_columns的顺序对df_merge进行调整列名 df_merge = df_merge.reindex(columns=new_columns) print(df_merge) # 4. 输出excel df_merge.to_excel(r'F:\data\data02\result.xlsx') print('ok')
pandas合并两个excel,并对列名进行调整
最新推荐文章于 2023-08-11 22:10:58 发布