【问题标题】:Working with Excel using Pandas without changing format and performing operations使用 Pandas 处理 Excel,无需更改格式和执行操作
【发布时间】:2019-02-02 08:19:25
【问题描述】:

我想阅读下面的 excel,并且必须处理一些绿色粗体类型颜色列(col1,2 等)的列。假设要替换某些列中的文本.. 怎么做?另外,我希望保持 excel 的颜色、字体结构,是否可以在 Pandas 中使用? 附加图像和粘贴内容...

This is the starting point .                                    

Row1        01.06.2018 to 30.06.2018                            
Row 2       Hello                           
Row 3       This is 3rd row                         
Row 4       ABCD004                         

No. Col1    Col2    Col3    Col4    Col5    Col6    Col7    Col8    Col9
3   123 Abc some_data   some_value  some_value  some_value  some_data   some_data   some_data
4   345 And saome_data  some_value  some_value  some_data   some_data   some_data   some_data
5   678 Add some_data   some_value  some_value  some_data   some_data   some_data   some_data

输出 Excel:- col6 值更改为 VALID DATA ,不更改任何 Excel 格式(颜色、字体等)

另外,如果不能保持确切的格式,附近有什么解决方案吗?

【问题讨论】:

    标签: python excel python-3.x python-2.7 pandas


    【解决方案1】:

    将数据从 Excel 中读取到 Pandas DataFrame 对象中不会保留 Excel 的字体和颜色格式。一旦数据位于数据框中,您可以对数据进行许多转换,但是您需要将其写回 Excel,您可以在 Excel 中重新应用您的格式和颜色。根据您的屏幕截图,我建议在 Pandas 中使用它时删除实际列上方的部分,然后您可以将它们重新添加到 Excel 中,即这些:

    This is the starting point .                                    
    
    Row1        01.06.2018 to 30.06.2018                            
    Row 2       Hello                           
    Row 3       This is 3rd row                         
    Row 4       ABCD004  
    

    这样您就可以使用格式良好的数据框。

    No. Col1    Col2    Col3    Col4    Col5    Col6    Col7    Col8    Col9
    3   123 Abc some_data   some_value  some_value  some_value  some_data   some_data some_data
    4   345 And saome_data  some_value  some_value  some_data   some_data   some_data   some_data
    5   678 Add some_data   some_value  some_value  some_data   some_data   some_data   some_data
    

    同样,您可以在 Pandas 中进行数据转换,然后在 Excel 中进行颜色和表格格式设置。此外,如果这是一次性要求,您可以只在 Excel 中进行转换而不使用 Pandas。这可能是保持 Excel 格式和替换所需内容的最快方法。

    不确定您对 Pandas 有多少经验,但 documentation 解释了读/写方法以及如何进行您询问的转换。希望这对您有所帮助,如果不清楚,请随时解释更多或进一步分解您的问题陈述。

    【讨论】:

    • 我知道如何在 Pandas 中进行转换。我更感兴趣的是找到一种可以避免直到“第 4 行”的方法,以便可以在下面完成工作..如果格式将消失它就可以了。
    • @RonyA 是的,您可以手动删除 Excel 中的行,或者如果您使用 Pandas,只需使用 [] 运算符切掉这些行来创建数据框的副本。我没有您确切的数据框,但可能类似于:df_copy = df[6:]
    猜你喜欢
    • 1970-01-01
    • 2021-10-17
    • 2018-03-21
    • 2020-02-24
    • 1970-01-01
    • 2021-07-15
    • 1970-01-01
    • 2021-04-19
    • 1970-01-01
    相关资源
    最近更新 更多