gpt4 book ai didi

python - 在 Excel 工作表中处理数据框输出

转载 作者:行者123 更新时间:2023-12-04 22:17:37 25 4
gpt4 key购买 nike

早晨,
我有一个数据框,我根据特定列中的交易簿将其拆分为多张工作表。导出到单个工作表后,我想自动调整数据,隐藏网格线并居中对齐数据并卡住特定单元格上的 Pane ($B$2)。导出已完成,但 Excel 中的格式不起作用,我被困在自动调整上:

dfTemp = {  'Trading_Book': ['A', 'A', 'A',
'B', 'B', 'B',
'C', 'C', 'C',
],
'Client': ['AA', 'AA', 'AA',
'BB', 'BB', 'BB',
'CC', 'CC', 'CC',
],
}
dfTemp = pd.DataFrame.from_dict(dfTemp)
print(dfTemp)

# Export each Trading Books data to a separate sheet in Excel
excel_writer = pd.ExcelWriter('C:\EOM_ML_201901\outputs\Excel_Data.xlsx')
dfTemp.to_excel(excel_writer, sheet_name='Consolidated')
# Get Book List
Books = dfTemp['Trading_Book'].unique().tolist()
# For each book send to Excel sheet
for myname in Books:
mydf = dfTemp.loc[dfTemp.Trading_Book == myname]
mydf.to_excel(excel_writer, sheet_name=myname)
# Autofil columns
for column in mydf:
column_length = max(mydf[column].astype(str).map(len).max(), len(column))
col_idx = mydf.columns.get_loc(column)
excel_writer.sheets[myname].set_column(col_idx, col_idx, column_length)
excel_writer.save()
任何援助将不胜感激。

最佳答案

当您写入文件时,可以直接从 pandas 完成卡住 Pane :

mydf.to_excel(excel_writer, sheet_name=myname, freeze_panes=(x,y))
根据 documentation here 将 (x,y) 替换为要卡住的行和列.
不幸的是,相同的文档没有显示直接从 pandas 隐藏网格线的方法。但是,您可以调用 xlsxwriter 作为用于写入的引擎: mydf.to_excel(excel_writer, sheet_name=myname, engine='xlsxwriter')那么你应该可以关注 accepted answer here隐藏网格线。
对于对齐中心,您可以使用 xlsxwriter 包中的这两个命令,具体取决于您想要水平居中还是垂直居中:
cell_format.set_align('center')
cell_format.set_align('vcenter')
Documentation here在 xlsxwriter 中,使用 ctrl-f 'align' 跳到你想要的部分。
祝你好运!

关于python - 在 Excel 工作表中处理数据框输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67478919/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com