文字列形式としてインポートされたパンダDataFrameに1つのフィールドがあります。それは日時変数であるべきです。それをdatetime列に変換してから日付に基づいてフィルタリングするにはどうすればよいですか。
例:
to_datetime
関数を使用して、データと一致するように フォーマット を指定します。
raw_data['Mycol'] = pd.to_datetime(raw_data['Mycol'], format='%d%b%Y:%H:%M:%S.%f')
Mycolの値を操作するには、DataFrameメソッド .apply()
を使用します。
>>> df = pd.DataFrame(['05SEP2014:00:00:00.000'],columns=['Mycol'])
>>> df
Mycol
0 05SEP2014:00:00:00.000
>>> import datetime as dt
>>> df['Mycol'] = df['Mycol'].apply(lambda x:
dt.datetime.strptime(x,'%d%b%Y:%H:%M:%S.%f'))
>>> df
Mycol
0 2014-09-05
raw_data['Mycol'] = pd.to_datetime(raw_data['Mycol'], format='%d%b%Y:%H:%M:%S.%f')
ただし、PythonはA値がDataFrameのスライスのコピーに設定されようとしているという警告を出します。代わりに.loc[row_indexer,col_indexer] = value
を使ってみてください
これは連鎖的な索引付けが原因であると思います。
変換する列が複数ある場合は、次の操作を行います。
df[["col1", "col2", "col3"]] = df[["col1", "col2", "col3"]].apply(pd.to_datetime)