2014-02-08 156 views
2

我在我的df中有微秒的分辨率,这是非常重要的,但无论我尝试什么,我都无法使用.xls或.xlsx显示微秒分辨率。有关如何让它们显示而不显式转换为字符串的任何想法?熊猫输出时间戳to_excel微秒

+0

你能给一个例子显示这个吗?大熊猫的时间戳是纳秒,所以微秒是没有问题的 –

+0

@AndyHayden实际上,熊猫支持它,但无论你做什么Excel不支持微秒的分辨率。如果你问我,相当烦人。我现在正在做的是在输出为excel之前将所有时间戳转换为文本 - 这是我能想到的唯一方法。 – stgtscc

回答

1

随着大熊猫在GitHub上的最新版本(以及即将发布的0.13.1),您可以在ExcelWriter()像这样指定的Excel日期格式:

import pandas as pd 
from datetime import datetime 

df = pd.DataFrame([datetime(2014, 2, 1, 12, 30, 5, 60000)]) 

writer = pd.ExcelWriter("time.xlsx", date_format='hh:mm:ss.000') 

df.to_excel(writer, "Sheet1") 

writer.close() 

这将显示在微秒时间(或者因为这至少是毫秒Excel的显示限度):

enter image description here

Working with Python Pandas and XlsxWriter见。

+0

谢谢,我安装了0.13.1,我相信它至少是序列化的微秒,但它太糟糕了,Excel不能显示微秒的分辨率......也许libreoffice会。 – stgtscc