PANDAS:写入Excel时更改为1904日期系统

时间:2018-05-02 19:36:51

标签: python-2.7 pandas

希望这是一个非常简单的问题,但是在写一本书的时候,如果我可以在创作时将它设置为1904年,那么它将简化我的工作。我目前正在使用Macro进行此操作,但是当我按照该顺序执行此操作时,创建了将所有日期字段添加4年的问题。

设置excel writer是否可以自动创建设置为1904的图书?

谢谢!

安迪

2 个答案:

答案 0 :(得分:2)

你可以用xlsxwriter来做,但我认为没有直接来自熊猫的方法。

workbook = xlsxwriter.Workbook(filename, {'date_1904': True})

xlsxwriter.readthedocs.io/workbook.html

答案 1 :(得分:2)

正如Troy指出的那样,可以通过构造函数从XlsxWriter完成。也可以将此参数传递给Pandas中的xlsxwriter引擎:

import pandas as pd
from datetime import date

df = pd.DataFrame({'Dates': [date(2018, 1, 1),
                             date(2018, 1, 2),
                             date(2018, 1, 3),
                             date(2018, 1, 4),
                             date(2018, 1, 5)],
                   })

writer = pd.ExcelWriter("pandas_example.xlsx",
                        engine='xlsxwriter',
                        options={'date_1904': True})

df.to_excel(writer, sheet_name='Sheet1')

输出文件中的选项:

enter image description here

请参阅XlsxWriter文档的Passing XlsxWriter constructor options to Pandas部分。