3合并本地excel工作表并导出多种分析结果

pandas可以读取的数据格式:

read_csv
read_excel
read_hdf
read_sql
read_json
read_msgpack(experimental)
read_html
read_stata
read_sas
read_clipboard
read_pickle

2pandas可以存储的数据格式

to_csv
to_excel
to_hdf
to_sql
to_json
to_msgpack(experimental)
to_html
to_gbq(experimental)
to_stata
to_clipboard
to_pickle

 

1安装库:

pip install pandas

pip install xlsxwriter

2合并两张表并导出结果:

#导入库
import pandas as pd
#指出文件路径
filepath = r'E:/test/lesson15.xlsx'

  #保存文件
  df.to_csv(r'E:/test/resultcsv.csv')

#读取文件中的两张表
df1 = pd.read_excel(filepath,sheet_name="Sheet101")
df2 = pd.read_excel(filepath,sheet_name="Sheet105")

#合并两张表(忽略之前的索引,重新编排索引ignore_index=True)
df3 = pd.concat([df1,df2],ignore_index=True)

#把结果导出为excel文件(index=False:我不希望把它的行索引给导出来;na_rep=0:设置缺失值,如果数据没有值就用0代替;inf_rep=0:如果出现无穷值用0替代)
resultPath = r'E:/test/result.xlsx'
df3.to_excel(resultPath,sheet_name="汇总",index=False,na_rep=0,inf_rep=0)

#把结果导出为csv文件:
resultCSVPath = r'E:/test/result.csv'
df3.to_csv(resultCSVPath,index=False,na_rep=0)

3使用 xlsxwriter库可以事半功倍

#1定义一个如何写excel的类型
writer = pd.ExcelWriter(resultPath,engine="xlsxwriter")
#2可以一次性执行多钟导出
df3.to_excel(writer,sheet_name="数据汇总有索引")
df3.to_excel(writer,sheet_name="数据汇总无索引",index=False)
#导出部分列
df3.to_excel(writer,sheet_name="只导出运单编号和账单金额",index=False,columns=["运单编号","账单金额"])
#3不要忘记保存
writer.save()

 4集合函数的应用:

import pandas as pd
#读取文件
df = pd.read_excel(r'E:/test/result.xlsx')


#根据发件人姓名筛选出账单金额并求和
print(df.groupby("发件人姓名")["账单金额"].sum())


#按照发件人电话进行分组,对发件人电话进行count,对账单金额进行sum
print(df.groupby("发件人电话").aggregate({"发件人电话":"count","账单金额":"sum"}))

#重置索引
print(df.groupby("发件人电话").sum().reset_index)

#统计一级部门的

 

posted @ 2021-12-24 11:18  linuxTang  阅读(122)  评论(0)    收藏  举报