前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python 数据分析基础 day8-pandas读写多个excel文件

python 数据分析基础 day8-pandas读写多个excel文件

作者头像
billyang916
发布2018-05-02 10:09:16
1.7K0
发布2018-05-02 10:09:16
举报

今天是读《python数据分析基础》的第8天,今天的读书笔记的内容为利用pandas读写多个excel文件,当中涉及到读写excel文件的多个工作表。 大致原理如下: glob.glob()以及os.path.join()函数负责获取输入要读取的excel文件的具体路径。 pandas的read_excel函数负责读取函数,通过当中的sheet_name参数控制读取excel工作表。当读取一个工作表时,返回一个DataFrame;若读取多个或全部excel工作表,则返回一个字典,键、值分别为工作表文件名和存放工作表数据的数据框。 pandas.DataFrame.to_csv()函数负责输出数据至excel文件。当中的excel_writer参数控制输出路径及excel文件名,sheet_name控制输出的excel工作表。请注意,若指定的excel文件不存在,则新建一个;若存在,则将数据以新工作表的形式写入已存在的excel文件当中。 接下来实例及相应的代码说明通过pandas读写exel文件。 案例:读取多个excel文件当中的所有工作表,将数据输出至一个新excel文件,当中的每个工作表为之前读取的单个excel文件的所有数据,工作表名为读取的excel文件名,不包括后缀。 代码:

"""
通过pandas读写多个excel文件
"""

import glob
import os
import pandas as pd

inputPath="需要读入的excel文件路径"
outputWorkbook="excel输出文件"
inputWorkbook=glob.glob(os.path.join(inputPath,"*.xlsx"))
writer=pd.ExcelWriter(outputWorkbook)


for workbook in inputWorkbook:
    allData=[]
    combineData=pd.DataFrame
    #读取excel文件
    allSheetData=pd.read_excel(workbook,sheet_name=None)
    for name,data in allSheetData.items():
        allData.append(data)
    combineData=pd.concat(allData,axis=0,ignore_index=True)
    #输出excel文件
    combineData.to_excel(writer,sheet_name=os.path.basename(workbook)[:-5],index=False)
writer.save()
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.03.21 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档