首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >强制pandas.to_excel将数据写为“文本”而不是“常规”格式

强制pandas.to_excel将数据写为“文本”而不是“常规”格式
EN

Stack Overflow用户
提问于 2020-05-18 15:39:25
回答 2查看 1.5K关注 0票数 0

我已经在目标Excel列中将单元格格式设置为'Text‘。但是,当将字符串写入此列时,pandas.to_excel将格式更改为“常规”,最终列以空白单元格结束,空单元格的格式为“文本”,非空白单元格的格式为“常规”。有没有办法把数据写成“文本”而不是“常规”?

代码语言:javascript
运行
复制
def exportData(df, dstfile, sheet):
    book = load_workbook(dstfile)
    writer = pd.ExcelWriter(dstfile, engine='openpyxl', date_format='dd/mm/yyyy', datetime_format='mm/dd/yyyy hh:mm')
    writer.book = book
    writer.sheets = dict((ws.title, ws) for ws in book.worksheets)
    df.to_excel(writer, header=False, startrow=2, index=False, sheet_name=sheet)
    writer.save()
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-05-18 21:25:29

您可以使用following method遍历单元格。

要设置为TEXT格式的单元格只需使用:

代码语言:javascript
运行
复制
cell.number_format = '@'

这将在Excel中将单元格格式设置为TEXT

也许有一种方法可以直接在Pandas中的ExcelWriter中完成,但我对此并不陌生,也许有些更了解的人也会编辑这个选项的答案。

票数 1
EN

Stack Overflow用户

发布于 2020-12-01 21:13:04

您需要做的就是将pandas中的数据保存为'object' (文本),如下所示:

代码语言:javascript
运行
复制
df = pd.DataFrame(data=d, dtype=object)

在此之后,如果您使用pandas to_excel方法导出到Excel中,它将作为文本存储在Excel中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61864632

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档