1
私は実行時間の日付をファイル名の一部としてYYYYMMDD形式にする必要がある出力csvのスクリプトを書いています。 execution_timestampはJDBC経由で取得され、DataFrame でint64として終了します。SQLビッグint int64タイムスタンプを不正確な日付を返す
import pandas as pd
from dateutil import parser
入力:
x = pd.DataFrame([1493293503289], columns=['EXECUTION_TIMESTAMP'])
ts= x['EXECUTION_TIMESTAMP']
ts
出力:私はパンダ データフレームに変換し、次のコードを、書かれている
0 1493293503289
Name: EXECUTION_TIMESTAMP, dtype: int64
- >タイムスタンプが - >解析されYYYYMMDD
入力:
df=pd.DataFrame(ts) # create pd data frame
ts_conv = pd.to_datetime(df['EXECUTION_TIMESTAMP'], unit='ns')[0]
parser.parse(str(ts_conv)).strftime('%Y%m%d')
出力:
'19700101'
しかしts_conv
= Timestamp('1970-01-01 00:24:53.293503289')
私は、実際の実行時間は、私は非常に適切な日付にこれを変換する任意の提案をいただければ幸いです'2017-04-27-11.45.03'
であることを知っています。
間違ったユニットを使用しているように、 'ユニット= 'ms''てみてくださいようです。 – gseva