首页 > 解决方案 > 在 pandas 中打开多个文件 - 其中一些是“所有者”文件

问题描述

我正在尝试将带有熊猫的多个文件打开到数据框中。

只有带有前缀 ~$ 的文件显示错误

XLRDError: Unsupported format, or corrupt file: Expected BOF record; found b'\x15Microso'

这是我的两个文件路径列表:

bulk_uploads /~$0730-0731.xlsx',
bulk_uploads /0701-0702.xlsx'

没有前缀的那个打开得很好,我不知道为什么另一个会抛出错误。

这是我正在尝试的代码:

import pandas as pd
import glob

path = 'bulk_uploads ' # use your path
all_files = glob.glob(path + "/*.xlsx")

li = []

for filename in all_files:
    df = pd.read_excel(filename, sheet_name = 1)
    df['Date'] = str(filename)[:-4]
    li.append(df)

# frame = pd.concat(li, axis=0, ignore_index=True)

有没有办法让任何具有此前缀的文件丢失它,或者另一种方法?

看起来它们是我之前打开的文件(我目前没有打开文件)

标签: pythonexcelpandasdataframeimport

解决方案


import pandas as pd
import glob
import re

path = 'bulk_uploads ' # use your path
all_files = glob.glob(path + "/*.xlsx")

li = []
special=re.compile('$~')  #####add more special characters if any

for filename in all_files:
   if special.search(filename):
      os.remove(filename)
   else:
        df = pd.read_excel(filename, sheet_name = 1)
        df['Date'] = str(filename)[:-4]
        li.append(df)

你可以试试这个,看看它是否工作正常?您的文件夹似乎有临时文件..


推荐阅读