2017-02-22 13 views
3

私はマイクロ秒の精度を含む秒-のでエポック値の配列を、変換しようとしているto_datetimeパンダを使用して、マイクロ秒の精度を落とすことなく、日時秒換算、以下に示すto_datetimeとおりパンダを使用して日時フォーマットに

Timestamp('2017-02-15 19:35:00') 

精度を失うことなく変換する方法上の任意のアドバイスを:

x = 1487187300.038075 
time = pd.to_datetime(x, unit='s') 

生産、これが成功したタイムスタンプに変換しますが、マイクロ秒の精度が低下した(あるいは少なくとも見えない)のか?これまでの検索では、OPがマイクロ秒の精度を維持することができない例が示されています。

+0

試してみる 'print(time.microsecond)' –

+0

ゼロを返す!提案していただきありがとうございます! – CrashLandon

+0

あなたはどんなパンダのバージョンを使用していますか? '0.19.2'はあなたの例をテストする際にマイクロ秒を保持します。 –

答えて

1

私は根本的な原因と一時的な回避策を見つけたと思います。フロートが切り捨てられていたパンダ0.19.1に修正された問題がありました。

https://github.com/pandas-dev/pandas/issues/13834

回避策はarguement「エラー= 『強制』」を使用することです:

x = 1487187300.038075 
time = pd.to_datetime(x, unit='s', errors='coerce') 

time 
Out[43]: 
Timestamp('2017-02-15 19:35:00.038075') 

を私は「エラー」引数によって影響を受ける可能性がある他に何にスマートではないんだけど、私はそれが私の問題を解決すると思う。

関連する問題