使用Python的pandas将新的数据框附加到现有的Excel表格中

12 浏览
0 Comments

使用Python的pandas将新的数据框附加到现有的Excel表格中

我目前有这段代码。它完美地工作。

它循环遍历文件夹中的Excel文件,

删除前两行,然后将它们保存为单独的Excel文件,

并且还将循环中的文件保存为附加文件。

目前附加文件每次运行代码时都会覆盖现有文件。

我需要将新数据附加到已存在的Excel表格('master_data.xlsx')的底部。

dfList = []
path = 'C:\\Test\\TestRawFile' 
newpath = 'C:\\Path\\To\\New\\Folder'
for fn in os.listdir(path): 
  # 绝对文件路径
  file = os.path.join(path, fn)
  if os.path.isfile(file): 
    # 导入Excel文件并将其命名为xlsx_file 
    xlsx_file = pd.ExcelFile(file) 
    # 查看Excel文件的工作表名称 
    xlsx_file.sheet_names 
    # 将xlsx文件的数据工作表加载为数据框 
    df = xlsx_file.parse('Sheet1',header= None) 
    df_NoHeader = df[2:] 
    data = df_NoHeader 
    # 保存单独的数据框
    data.to_excel(os.path.join(newpath, fn))
    dfList.append(data) 
appended_data = pd.concat(dfList)
appended_data.to_excel(os.path.join(newpath, 'master_data.xlsx'))

我以为这将是一个简单的任务,但我想错了。

我认为我需要将master_data.xlsx文件导入为数据框,然后将索引与新的附加数据匹配,并将其保存回去。或者也许还有更简单的方法。任何帮助都将不胜感激。

0