如何循环浏览多个Excel工作表,执行操作和连接数据

时间:2019-01-30 20:14:44

标签: python excel pandas dataframe openpyxl

我有数千张excel工作表,我想循环浏览,提取数据块并将它们连接成一个文件。

所有excel文件都位于(“桌面/ excel”中)

这是我为此使用的代码:

import numpy as np
import pandas as pd
import os
import glob
from openpyxl import workbook
from openpyxl import load_workbook



os.chdir("desktop/excel")


for f in glob.glob("*.xlsx"):
wb = load_workbook(f)
wb.active = 0
ws = wb.active
data = [[]]
buf = pd.DataFrame()
found = 0
pair=0
out=0
max_row = ws.max_row+1   # Max number of rows in the workbook
max_col = ws.max_column+1 # Max number of columns in the workbook

提取所需数据

  for x in range(23,26):
    for y in range(1,max_col):
        if(ws.cell(row=x,column=y).value):
            if not pair:

               buf.append(ws.cell(row=x,column=y).value)
               pair=1
            else:

                buf.append(ws.cell(row=x,column=y).value)
                data.append(buf)
                pair=0
                buf=()

    if pair:
        buf.append("n/a") # completing the value pair by 
                           #adding "NA" next to the field 
        data.append(buf)
        pair=0
        buf=()




print("---------------------------------------")
for x in range(len(data)):
print(data[x])

我希望获得这些单个文件的串联列表,但我不断收到以下错误:

TypeError:无法连接类型为“”的对象;仅pd.Series,pd.DataFrame和pd.Panel(不建议使用)objs有效。

我对Python非常陌生,任何帮助将不胜感激。

0 个答案:

没有答案