python - 如何使用 python pandas 将标题写入多个工作表

标签 python python-3.x pandas

我正在按列 OfficeLocation 分解数据框,并将 Excel 文件放入定义的文件夹中。

import pandas as pd


df = pd.DataFrame({
    'PolicyNumber':['Pol1','Pol2','Pol3','Pol4','Pol5'],
    'OfficeLocation':['San Diego', 'San Diego','San Diego','Vista','Vista'],
    'Premium':[800,300,650,200,700]
})


folder_list = ['San Diego', 'Vista']

for location, d in df.groupby('OfficeLocation'):
    for folder in folder_list:
        if folder == location:            
            d.to_excel(f'\\\\server\user\name\{folder}\{location}.xlsx',sheet_name=location, startrow=4, index=False)

但是我怎样才能在每个 Excel 电子表格中编写标题“位置 - 圣地亚哥”、“位置 - Vista”?

enter image description here

最佳答案

我相信这应该得到你想要的。

import pandas as pd


df = pd.DataFrame({
    'PolicyNumber':['Pol1','Pol2','Pol3','Pol4','Pol5'],
    'OfficeLocation':['San Diego', 'San Diego','San Diego','Vista','Vista'],
    'Premium':[800,300,650,200,700]
})


folder_list = ['San Diego', 'Vista']

for location, d in df.groupby('OfficeLocation'):
    for folder in folder_list:
        if folder == location:            
            writer = pd.ExcelWriter(f'\\\\server\user\name\{folder}\{location}.xlsx', 
                                    engine='xlsxwriter')
            d.to_excel(writer, sheet_name=location, startrow=4, index=False)
            writer.sheets[location].write('A1', 'Office - {}'.format(location))
            writer.close()

关于python - 如何使用 python pandas 将标题写入多个工作表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58547865/

相关文章:

Python:不使用循环的列和行操作

python - 在 Python Pandas 中,有没有办法在一行中多行并排?保持秩序

R 的 dput() 函数的 Python 等价物

Python zip() 两个列表

python - 如何通过tesseract OCR读取黑色背景图像上的黑色文本?

python - 为什么求幂从右到左?

pandas - 根据其他列值估算值

python - 为什么 cron 作业不编译 python 文件?

python - 检查列表项是否包含来自另一个列表的子字符串

python - Flask-wtforms中不同的Form对象是如何通信的?