提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


文章目录

  • 前言
  • 一、代码
  • 运行时:
  • 二、列表合并后如何调整列的位置
  • 运用场景
  • 三、输出问题
  • 1.多表写入一个excel中的多sheet中
  • 总结



前言

提示:这里可以添加本文要记录的大概内容:

两个excel表格,证件号码唯一,使用vlookup函数进行处理


提示:以下是本篇文章正文内容,下面案例可供参考

一、代码

要点在于使用merge函数

import pandas as pd
import numpy as np
writer=pd.ExcelWriter(r"F:\work\ashimen\result2.xlsx")
df1=pd.read_excel(r"F:\work\ashimen\result.xlsx",sheet_name='Sheet1')
df2=pd.read_excel(r"F:\work\ashimen\居民缴费明细.xlsx",sheet_name='sheet1')
data=df2.loc[:,["证件号码","缴费状态"]]
data3 = pd.merge(df1,data,how = 'left',on = "证件号码") 
data3.head()
data3.to_excel(writer,sheet_name='Sheet1')
writer.save()

运行时:

提示:这里填写问题的分析:

一开始对于表二的处理使用函数:df2.loc[:,“zhengjianhaoma”,“xingming”],运行时报错说有多个索引器,所以要对loc函数各个参数怎么使用要牢记:df.loc[:;“zhengjianhm”:“jiaofeizhuangtai”]这是提取了从证件号码到缴费状态所有列的信息
data=df2.loc[:,[“证件号码”,“缴费状态”]]这是只搞了两列的

解决方案:

提示:这里填写该问题的具体解决方案:
data=df2.loc[:,[“证件号码”,“缴费状态”]]这是只搞了两列的

二、列表合并后如何调整列的位置

运用场景

比如一个成绩表和学生姓名表合并后,列是[学号,成绩,姓名,性别],如何变成[学号,姓名,性别,成绩]
代码如下(示例):
insert() 函数用于将指定对象插入列表的指定位置。运用于列表list

#仅仅只有调换顺序的代码
#查看列名
df.columns
#将columns变成Python的列表形式
new_columns=df.columns.to_list()
#按逆序insert,会将"姓名",性别放到学号的后面
#[::-1]这是为了实现逆序
for name in["姓名","性别"][::-1]:
    new_columns.remove(name)
    new_columns.insert(new_columns.index("学号")+1,name)
df=df.reindex(columns=new_columns)

三、输出问题

1.多表写入一个excel中的多sheet中

代码如下(示例):

writer=pd.ExcelWriter(r"G:\360Downloads\myself\zuoye\6月\alter.xlsx")
add.to_excel(writer,sheet_name="add8487",index=0)
cut.to_excel(writer,sheet_name="cut8453",index=0)
writer.save()
writer.close()
#第二种方法
writer = pd.ExcelWriter('filename.xlsx')			#重点1:writer不能在下面的for循环中
counter=0
for sy in range(1,10):
    counter=counter+1
    data = pd.DataFrame(c) 
    data.to_excel(writer, 'sheet'+str(counter))
     
writer.save()		#重点2:save不能在for循环里
writer.close()
————————————————

总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。