我有一个pandas DataFrame
我想写给Excel。对于一列,我的数据值是逗号分隔的字符串,例如"val1,val2"
或"val1,val2,val3"
。当我写这个专栏时,我想用等同于在Excel中按ALT-ENTER
替换逗号,以便在值之间存在换行符。因此,我的第一个示例将显示为val1
,然后在单元格中显示,然后val2
,依此类推。您也可以在Excel中通过使单元格成为公式并在每个值之间放置&"char(10)"&
来执行此操作。
我知道如何通过coding up formulas via XLSXWriter执行此操作并单独编写单元格。但是,我希望(或者懒洋洋地)想知道是否有方法将中断编码到数据中,以便通过to_excel()
上的DataFrame
简单调用它们。 }。
答案 0 :(得分:3)
在XlsxWriter中,您可以使用字符串中的换行符和text_wrap
format属性将其包装到单独的行中。见section of the Format docs。
wrap_format = workbook.add_format({'text_wrap': True})
worksheet.write(0, 0, "Val1\nval2", wrap_format)
要从Pandas执行此操作,您可以将字符串中的逗号转换为\n
,然后将text_wrap
格式应用于the target spreadsheet中的列。
答案 1 :(得分:0)
对我来说,这种代码完美无缺:
liste=['adsf','asdfas','dasdsas','asdfsdaf']
text=''
for elem in liste:
text=text+elem+'\n'
ws.Cells(1,1).Value=text