8-1. filter_csvでは元のデータ(data.csv)からGPSに関係する項目のみを抽出して保存するこのプログラムを紹介しました。summary_filter_csvでは、ローカル環境やクラウド環境で動作するJupyter Notebookなどを使うことで、よりインタラクティブにCSVファイルに含まれるデータ概要を表示し、必要な期間・センサー情報を指定して、必要な部分のみのデータを抽出して保存します。
実行方法
プログラム(summary_filter_csv.py)をダウンロードして、Pythonのプロンプト上、プログラムを保存したディレクトリに移動して、以下のコマンドを実行します。
python summary_filter_csv.py
ファイル名(data)を入力すると以下のようにデータ概要が表示されます。つづいて、一部のデータを抽出する場合には “y” を終了する場合は “n” と入力します。
(base) D:\>python summary_filter_csv.py CSVファイル名を入力してください(拡張子は省略可): data === データの概要 === 記録開始日時: 2021-08-24 19:13:27+00:00 記録終了日時: 2021-08-25 00:39:02.960000+00:00 ファイルサイズ: 30.91 MB センサー情報 (データ数): latitude (610) longitude (610) acceleration_longitudinal (488400) acceleration_lateral (488400) acceleration_dorso_ventral (488400) pressure (19536) temperature (19536) height_above_mean_sea_level (610) ground_speed (610) number_of_satellites (610) 一部のデータを抽出しますか? (y/n):
表示されたデータ概要を参考に、必要なデータの”開始日時” (2021-08-25 00:00)、”終了日時” (2021-08-25 00:30) をUTC時刻で入力し、つづいて必要なセンサー情報 (latitude, longitude, height_above_mean_sea_level) を入力します。
開始日時をUTC時刻で入力してください (形式: YYYY-MM-DD HH:MM:SS): 2021-08-25 00:00 終了日時をUTC時刻で入力してください (形式: YYYY-MM-DD HH:MM:SS): 2021-08-25 00:30 センサー情報を入力してください(カンマ区切り, 例: latitude, longitude, height_above_mean_sea_level): latitude, longitude, height_above_mean_sea_level
保存するファイル名(filtered_data)を入力すると、同じフォルダ内に抽出したデータがCSVファイル(filtered_data.csv)が保存され、そのデータ概要が表示されます。
保存するファイル名を指定してください(拡張子.csvは不要): filtered_data データが 'filtered_data.csv' に保存されました。 === フィルタリングされたデータの概要 === 記録開始日時: 2021-08-25 00:06:33+00:00 記録終了日時: 2021-08-25 00:29:32+00:00 センサー情報: latitude (47) longitude (47) height_above_mean_sea_level (47)