2017-05-22 10 views
0

pandasデータフレーム列の総秒数をhh:mmのような別の列に変換できますか?Python pandasは秒単位で変換する(hh:mm)

は私のmysqlのクエリでは、私は

SELECT SEC_TO_TIME(xxxx); 

ような何かを行うことができますが、出力は私のパンダDATAFRAMEで間違っ変換されたので、私が代わりにSQLのパンダと一緒に時間を秒からconvertionをしたいです... 私はpd.to_timedelta機能で遊んでいます:

df['time'] = pd.Timedelta(Second(df['sec'])) 

しかし、それは動作しません。

-edit-

解決済み! これは働いていなかった。

df['time'] = pd.to_datetime(df["sec"], unit='s') 

が、DFのDTYPE [「秒」]間違っていたので、それは(それがオブジェクト・タイプ)でした。 :)私が最初にしてpd.to_datetime機能をfloat型に列を変換しようと、今、私は私が望むものを持っている:

df['sec'] = df['sec'].astype('float64') 
df['time'] = pd.to_datetime(df["sec"], unit='s') 
+0

サンプル入力と出力がありますか? –

+1

[Pandas:DatetimeインデックスとしてのUnixエポックタイムスタンプの使用](https://stackoverflow.com/questions/16517240/pandas-using-unix-epoch-timestamp-as-datetime-index) –

+0

ありがとう、スティーブン!あなたのリンクのポストは私を正しい方向に持っていました(df ['datetime'] = pd.to_datetime(df ["timestamp"]、unit = 's'))) – Joost

答えて

0

これはYYYY-MM-DDのHHに時間を変換します:mmの形式:

df['time'] = pd.to_datetime(df['time'], unit='m') 
関連する問題