8

我注意到 Pandas 知道如何巧妙地将timedelta对象格式化为字符串。

In [1]: df[column][rows].max()
Out[1]: 
0   2 days, 02:08:07
dtype: timedelta64[ns]

当我尝试手动执行此操作时,我会在纳秒内不断获取字符串。

In [2]: df[column][rows].max()[0]
Out[2]: numpy.timedelta64(180487000000000,'ns')

In [2]: str(df[column][rows].max()[0])
Out[2]: '180487000000000 nanoseconds'

我宁愿不重新发明轮子,那么有什么方法可以访问 Pandas 用来显示timedelta对象的字符串格式化方法(或字符串本身) x days, hh:mm:ss

4

1 回答 1

7

该功能位于此处

pd.tslib.repr_timedelta64

在行动:

In [11]: pd.tslib.repr_timedelta64(np.timedelta64(180487000000000,'ns'))
Out[11]: '2 days, 02:08:07'
于 2013-08-25T20:09:18.837 回答