Icon
szk

Webエンジニア
最近はWeb系の開発をしている.

Prog24_jp

Prog24

Prog24

prog24

Blog

データ分析
Python
勉強
データ処理

pandasでcsvなどを扱う際,csvに含まれるtimestampから,特定の時間のデータのみ取得したいことがよくある(多分)

text,timestamp hogehoge,2020-05-01 12:32:14 huga,2020-04-23 21:32:23 hoge,2020-05-23 14:10:23 foo,2020-04-21 12:32:25

こんなデータから,全ての日付の12時台のデータのみ取得したい!という感じのものだ.

早速方法.

>> import pandas as pd >> data = pd.read_csv('./sample.csv') >> data text timestamp 0 hogehoge 2020-05-01 12:32:14 1 huga 2020-04-23 21:32:23 2 hoge 2020-05-23 14:10:23 3 foo 2020-04-21 12:32:25 # この段階ではtimestampはdate型ではない >> data.types text object timestamp object dtype: object # timestampをdatetime型に変更する >> data['timestamp'] = pd.to_datetime(data['timestamp']) >> data.dtypes text object timestamp datetime64[ns] dtype: object # 12時台のデータのみ取得する >> data[data['timestamp'].dt.hour == 12] text timestamp 0 hogehoge 2020-05-01 12:32:14 3 foo 2020-04-21 12:32:25

同じように書けば,同じ日付のデータのみ取得する.といったことも可能になる.

SNSでシェア