使用python合并iqy文件

时间:2018-08-15 18:28:38

标签: python excel pandas merging-data

当前,我从sharepoint提取数据,并具有可以用excel打开的.iqy文件。大约有30个文件,我正在尝试使用python将所有信息合并到一个.iqy文件或excel文件中。

import os, glob
import pandas as pd

files = []
for file in os.listdir("C:\\Users\\CHI86786\\Downloads"):
    files.append(file)

excels = [pd.ExcelFile(name) for name in files]
frames = [x.parse(x.sheet_names[0], header=None, index_col=None) for x in excels]

frames[1:] = [df[1:] for df in frames[1:]]

combined = pd.concat(frames)
combined.to_excel("SPmerged.iqy", header=False, index=False)

采用与合并Excel文件相同的方法。但我不断收到错误消息,内容为FileNotFoundError: [Errno 2] No such file or directory: 'desktop.ini'

编辑

更多错误消息

File "C:\Users\CHI\source\repos\MergingExcel\MergingExcel\MergingExcel.py", line 8, in <module>
    excels = [pd.ExcelFile(name) for name in files] #reads names in
  File "C:\Users\CHI86786\source\repos\MergingExcel\MergingExcel\MergingExcel.py", line 8, in <listcomp>
    excels = [pd.ExcelFile(name) for name in files] #reads names in
  File "C:\Users\CHI\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pandas\io\excel.py", line 394, in __init__
    self.book = xlrd.open_workbook(self._io)
  File "C:\Users\CHI\AppData\Local\Programs\Python\Python37-32\lib\site-packages\xlrd\__init__.py", line 116, in open_workbook
    with open(filename, "rb") as f:
FileNotFoundError: [Errno 2] No such file or directory: 'desktop.ini'

1 个答案:

答案 0 :(得分:1)

您的代码正在尝试对C:\Users\CHI86786\Downloads中的每个文件进行操作,包括“ desktop.ini”之类的系统文件。

相反,请尝试将其限制为使用glob感兴趣的文件:

for file in glob.glob("C:\\Users\\CHI86786\\Downloads\\*.iqy")