首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从具有多个工作表的多个.xlxs文件中提取CSV文件[已回答]

从具有多个工作表的多个.xlxs文件中提取CSV文件[已回答]
EN

Stack Overflow用户
提问于 2020-11-10 18:19:30
回答 3查看 108关注 0票数 0

为了写我的论文机械工程,我收到了许多传感器数据,这些数据配置在多个excel文件(100)和多张表(22)中。现在我想把它可视化到power Bi中,但是.xlxs文件的速度很慢,所以我想把所有的数据(工作表)放在单独的CSV文件中。我没有任何真正的编程经验,但将能够在jupyter或spyder运行脚本。

我尝试了在VBA中配置多个excel到csv中的代码,但这只适用于.xlsx文件中的第一个工作表。

我也在jupyter notebook中使用了下面的代码;但这给了我一个excel的所有工作表。

代码语言:javascript
复制
data = pd.read_excel('file_name.file_format', sheet_name=None)

for sheet_name, df in data.items():
    df.to_csv(f'{sheet_name}.csv')

是否有人有用于此目的的代码,或者是否有人知道如何调整上面的代码来对文件夹中的所有excel文件执行此操作?

EN

Stack Overflow用户

发布于 2020-11-10 19:03:13

您可以尝试遍历每个包含.xlxs的文件的目录,只需将YOUR_DIR替换为包含这些文件的文件夹的路径即可。

我已经添加了" filename“,它只是一个没有扩展名的文件名,所以你可以将它添加到.csv文件名中

代码语言:javascript
复制
import os

directory = "\\YOUR_DIR\\HERE"
files = os.listdir(directory)

for xlxs_file in files:
    if ".xlxs" in xlxs_file:

        filename = xlxs_file.strip(".xlxs")
        xlxs_file = directory + "\\" + xlxs_file

        data = pd.read_excel(xlxs_file, sheet_name=None)
        for sheet_name, df in data.items():
            df.to_csv(f'{filename}_{sheet_name}.csv')
票数 0
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64766984

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档