Python 如何使用engine='制作pandas.read_excel;openpyxl';与xlrd一样,默认情况下不显示纳秒?
我们有一个将Excel.xlsx电子表格中的数据读入数据框的过程。在尝试升级到pandas的最新版本(1.2.1)时,我在pandas的docPython 如何使用engine='制作pandas.read_excel;openpyxl';与xlrd一样,默认情况下不显示纳秒?,python,excel,pandas,openpyxl,Python,Excel,Pandas,Openpyxl,我们有一个将Excel.xlsx电子表格中的数据读入数据框的过程。在尝试升级到pandas的最新版本(1.2.1)时,我在pandas的docread\u excel函数中为引擎参数看到了以下内容: “openpyxl”支持更新的Excel文件格式 在版本1.2.0中更改:引擎xlrd现在只支持旧式.xls文件 因此,我将engine='openpyxl'添加到我的read_excel函数调用中,并开始看到奇怪的新行为,即datetime值现在默认显示纳秒,而xlrd的情况并非如此。最重要的
read\u excel
函数中为引擎
参数看到了以下内容:
- “openpyxl”支持更新的Excel文件格式
engine='openpyxl'
添加到我的read_excel
函数调用中,并开始看到奇怪的新行为,即datetime值现在默认显示纳秒,而xlrd
的情况并非如此。最重要的是,我看到datetimes与Excel中的预期值相差几纳秒。我在熊猫1.2.1和1.1.4中也看到了同样的情况
对于以下Excel数据(9/24日期的原始值显示为44098.04166667,9/9日期的原始值显示为44083.684722222)
我看到以下行为:
>>> import pandas as pd
>>> pd.read_excel('~/testDatetimeNanos.xlsx')
TestDate
0 2020-09-24 01:00:00
1 2020-09-09 16:26:00
2 2020-09-09 16:26:00
>>> pd.read_excel('~/testDatetimeNanos.xlsx', engine='openpyxl')
TestDate
0 2020-09-24 01:00:00.000003
1 2020-09-09 16:25:59.999998
2 2020-09-09 16:26:00.000000
我想知道是否有办法使用新的openpyxl引擎,使其行为与旧的xlrd引擎一致…?另外,我想知道我是否偶然发现了一个bug(更新:submitted)