保存现有文件,而不通过按列划分DataFrame删除现有数据

问题描述 投票:-1回答:1

我有三个excel文件-A1 / A2 / A3,'Sheet1'中有一些现有数据。

import glob
from openpyxl import load_workbook
from openpyxl.utils.dataframe import dataframe_to_rows
import pandas as pd

df=pd.DataFrame()
for f in glob.glob(r'...\Excel\A*.xlsx'):
    info=pd.read_excel(f)
    df=df.append(info)   

使用上面的代码,我得到了下面的DataFrame:

Sample     Description
----------------------
A1         Auto
A2         Manual
A3         Fully-Automated

我希望在不删除现有“ Sheet1”的情况下,将A1的数据粘贴到A1文件中,将A2的数据粘贴到A2文件中,并将A3的数据粘贴到'Sheet2'中的A3文件中。

Sample     Description     
----------------------       ````` this data should go in A1 File
A1         Auto

Sample     Description     
----------------------       ````` this data should go in A2 File
A2         Manual

Sample     Description     
----------------------       ````` this data should go in A3 File
A3         Fully-Automated

我尝试在下面的代码中编写,但是只有最后一行被粘贴到所有三个excel文件中。


 - File A1

*Sheet2*
Sample     Description     
----------------------       
    A3         Fully-Automated

 - File A2

*Sheet2*
Sample     Description     
----------------------       
A3         Fully-Automated

 - File A3

*Sheet2*
Sample     Description     
----------------------       
A3         Fully-Automated



for filename in glob.glob(r'...\Excel\A*.xlsx'):
    for name,data in group_df:
        book=load_workbook(filename)
        writer=pd.ExcelWriter(filename,engine='openpyxl')
        writer.book=book
        data.to_excel(writer,sheet_name='Sheet2')
    writer.save()
    writer.close()

我需要按“样本”列对DataFrame进行分组,并将分割后的数据粘贴到新表中作为“ Sheet2”的各个文件中,而不删除现有的“ Sheet1”。

python pandas pandas-groupby openpyxl glob
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.