実現したいこと
CSVファイルのtimestamp [ns]という列からUNIX TIMEを取り出して日本時間に変換する。
変換した日本時間から動画の撮影開始時刻を引いた値から00:00:02.088479997みたいに時刻(ミリ秒まで)だけを取り出すプログラムを作成したい。
実行結果は
00:00:02.088479997
00:00:02.088479432
00:00:02.088472358
といった具合に表示させたい
発生している問題・分からないこと
実行すると 0 days 00:00:02.088479997
0 days 00:00:02.092518997
0 days 00:00:02.096479997
:
:
と表示され、 0 daysをなくして表示させたいがやり方がよく分からないです。
該当のソースコード
Python
1import pandas as pd 2import csv 3from datetime import datetime 4import time 5 6start_time=1702293673897000000#動画の撮影開始時刻 7 8df = pd.read_csv('ファイルのパス') 9df = df[["timestamp [ns]","gaze x [px]","gaze y [px]","azimuth [deg]","worn","elevation [deg]"]] 10 11 12timestamp_unix= list(df['timestamp [ns]'])#timestamp [ns]を取り出す(unix time) 13for i in timestamp_unix:#変換した時間をtimestamp 14 15 timestamp=pd.to_datetime(timestamp_unix)-pd.to_datetime(start_time) 16 17df['timestamp [ns]']= timestamp #timestamp.secondsはできた 18print(df)#timestamp [ns]","gaze x [px]","gaze y [px]","azimuth [deg]","worn","elevation [deg] 19
csvファイルtimestamp[ns]の中身
11702293675985479997, 21702293675989518997, 31702293675993479997, 41702293675997536997, 51702293676005487997, 61702293676009466997, 71702293676013541997, 81702293676017500997, 91702293676025457997, 101702293676029513997, 111702293676033470997, 121702293676037494997, 131702293676045555997, 141702293676049450997, 151702293676053464997, 161702293676057460997, 171702293676065477997, 18
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
timestamp.secondsだと秒だけしか表示されずミリ秒まで表示できない
補足
特になし
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2024/04/11 16:16