Python
pandas

pandasで時系列データを処理する時に引っかかったこと。

pandasの概要

pandasが必要なわけ

・株価データを予測したいのだが、データの整理をどうすれば良いか迷ったときに、pandasで処理をしている人が多かったのでpandasを使ってみる。
・csvとの連携も良いのでDBを使えない自分にはぴったり!?

pandasで指定した日時にアクセス。

下記のようなデータをpythonのサードパーティのjsmから取得し、DataFrameとして保存する。
スクリーンショット 2017-11-02 15.25.26.png

30日後のデータにアクセス

・当日にアクセス

df['2015-11-04']

と書いてもアクセスできなかった。(コメントによると、上記の書き方だと'2015-11-04'の列にアクセスしてしまうからだめだということ。)

df.loc['2015-11-04', :] #locを使う。

locを使用するとアクセスできた。pandasの基本でしたね。いい勉強になった。

・30日後のデータにアクセス。

delta = datetime.timedelta(28)
target_time = datetime.datetime(2016,11,1)
df.loc[target_time - delta, :]

Adj Close       1417
Close           1417
High            1417
Low             1402
Open            1403
Volume       2029300
Name: 2016-11-29 00:00:00, dtype: int64

株価データは毎日あるわけではなく、営業日分のデータしかないので、このやり方だとエラーが出るときがある。(pandasの扱い方としては正しい?)