【发布时间】:2018-09-17 22:01:38
【问题描述】:
我有大约 20 个 4-10 mb 的 XLSX 文件。
我想在这些 xlsx 文件中抓取某个工作表并将它们合并到一个文件中。
每个 xlsx 文件都按周顺序命名,而我尝试解析的工作表没有日期,因此我使用 file_name 作为索引,并将逆向设计一个星期日期。
我正在使用以下代码,我经常使用它来将多个文件合并到一个 df 中。我也在使用 basename 添加名称,但出现以下错误。
ValueError: Length mismatch: Expected axis has 461 elements, new values have 457 elements
import pandas as pd
from os.path import basename
import os
import glob
path = os.getcwd()
allFiles = glob.glob(path + "/*.xlsx")
frame = pd.DataFrame()
master_list = []
for file_ in allFiles:
df = pd.read_excel(file_,sheet_name = "Base data",index_col=None,
header=0)
df.index = [os.path.basename(f)] * len(data)
master_list.append(df)
frame = pd.concat(master_list)
【问题讨论】: