Pandas/Excel:在调用 DataFrame.to_excel() 时,有什么方法可以将 ALT-ENTER / CHAR(10) 行中断编码为数据?

spa*_*ead 7 python excel pandas

我有一个DataFrame想要写入 Excel的熊猫。对于一列,我的数据值是以逗号分隔的字符串,例如"val1,val2""val1,val2,val3"。当我编写该列时,我想将逗号替换为相当于ALT-ENTER在 Excel中按,以便在值之间有换行符。因此,我的第一个示例将显示为val1,然后是单元格内的中断,然后是val2,依此类推。您也可以在 Excel 中通过将单元格设为公式并&"char(10)"&在每个值之间放置来执行此操作。

我看到了如何通过 XLSXWriter编写公式并单独编写单元格来做到这一点。但是,我希望(或懒惰地)想知道是否有一种方法可以将中断直接编码到数据中,以便它们都可以通过to_excel()DataFrame.

jmc*_*ara 5

在 XlsxWriter 中,您可以使用字符串中的换行符和text_wrapformat 属性将其包装到单独的行中。请参阅格式文档的这一部分

wrap_format = workbook.add_format({'text_wrap': True})

worksheet.write(0, 0, "Val1\nval2", wrap_format)
Run Code Online (Sandbox Code Playgroud)

要从 Pandas 执行此操作,您可以将字符串中的逗号转换为\n,然后将text_wrap格式应用于目标电子表格中的列。