使用 to_excel 时隐藏列

3 python excel python-3.x pandas

我有两个 DataFrame,每个都有多个列。

我将这些保存到 Excel 的不同工作表中。

对于dir_tree_df数据框,我想隐藏前 3 张纸。对于table_of_contents_df数据框,我想隐藏第一列。

这可能吗?我在这里看到了一个可能的解决方案,但不确定如何在我的代码中实现它

是否可以使用 pandas 在 Python 中创建带有隐藏列的 Excel 文件?

我的代码

 with pd.ExcelWriter(target_directory + 'output_test.xlsx') as writer:  
        table_of_contents_df.to_excel(writer, sheet_name='Contents', index = False)
        dir_tree_df.to_excel(writer, sheet_name='Data', index = False)
Run Code Online (Sandbox Code Playgroud)

小智 5

认为我解决了它。该文档提供了帮助:
https://xlsxwriter.readthedocs.io/working_with_pandas.html https://xlsxwriter.readthedocs.io/worksheet.html#worksheet

with pd.ExcelWriter(target_directory + 'output_test.xlsx', engine = 'xlsxwriter') as writer:  
            table_of_contents_df.to_excel(writer, sheet_name='Contents', index = False)
            dir_tree_df.to_excel(writer, sheet_name='Data', index = False)
    
            worksheet = writer.sheets['Contents']
            worksheet.set_column('A:A', None, None, {'hidden': 1})
    
            worksheet = writer.sheets['Data']
            worksheet.set_column('A:C', None, None, {'hidden': 1})
            
Run Code Online (Sandbox Code Playgroud)