8

timedeltaPandas は、オブジェクトを文字列にスマートにフォーマットする方法を知っていることに気付きました。

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 に答える