pandas模块-----------比对不同数据(部分相同)

发布时间 2023-07-27 17:46:03作者: 往事已成昨天

代码如下:

import pandas as pd
# 学生成绩表
df_grade = pd.read_excel("find.xlsx")
df_grade.head()
# 学生信息表
df_sinfo = pd.read_excel("data.xlsx")
df_sinfo.head()


# 只筛选第二个表的少量的列
df_sinfo = df_sinfo[["学号", "姓名", "性别"]]
df_sinfo.head()

df_merge = pd.merge(left=df_grade, right=df_sinfo, left_on="学号", right_on="学号")
df_merge.head()



# 将columns变成python的列表形式
new_columns = df_merge.columns.to_list()


# 按逆序insert,会将"姓名","性别"放到"学号"的后面
for name in ["姓名", "性别"][::-1]:
new_columns.remove(name)
new_columns.insert(new_columns.index("学号") + 1, name)


df_merge = df_merge.reindex(columns=new_columns)
df_merge.head()

#步骤4:输出最终的Excel文件
df_merge.to_excel("4.xlsx", index=False)
实现效果如下:

 

 最终结果如下:4.xlsx