wrc*_*obb 3 python excel formatting milliseconds pandas
我曾经pandas.groupby将熊猫DataFrame分为两列,并计算平均时间和中值时间。我得到的数据集看起来与此类似:
Size Category Average Time Median Time
1 A 0.002056385 0.000310995
B 0.000310995
C 0.000310995
10 A 0.001852681
B 0.000310995
C 0.000310995
Run Code Online (Sandbox Code Playgroud)
我想将此表导出为excel,然后将时间列格式设置为Excel中的自定义格式,例如(hh:mm:ss.000)。换句话说,我想将时间视为毫秒级的时间。例如,以这种方式格式化的0.000310995显示为00:00:26.870(26.870秒)。
有人对如何完成这项壮举有任何见识吗?
更新:
通过使用,我已经靠近了一点to_datetime(df['Average Time'], unit='d')。现在,我的时间像1970-01-01 00:02:57.638400在DataFrame中一样格式化。但是,当to_excel用于导出到Excel时,它们的格式1970-01-01 00:02:58与Excel输出中的格式相同。此时,我只需要删除日期部分并增加毫秒精度即可实现我的目标。有什么想法吗?
非常感谢您提供的任何帮助-
您可以在Pandas中使用datetime_format参数ExcelWriter:
import pandas as pd
from datetime import datetime
df = pd.DataFrame([datetime(2014, 9, 18, 12, 30, 5, 60000)])
writer = pd.ExcelWriter("time.xlsx", datetime_format='hh:mm:ss.000')
df.to_excel(writer, "Sheet1")
writer.close()
Run Code Online (Sandbox Code Playgroud)
给出以下输出:

另请参阅使用Python Pandas和XlsxWriter。