pandasのindexを行番号を指定して取得
下記のように、pandasのindexを行番号を指定して取得できます。
ふとした時に意外と詰まったのでここに残したいと思います。
data.index[行番号]
csvデータを読み込んで、DataFrameのデータを作成します。
import pandas as pd
data = pd.read_csv('csv.txt',
names=('date', 'val1'),
index_col='date',
parse_dates=True)
Seriesでindexを取得します。
print(data.index)
0番目のindexを取得します。
print(data.index[0])
先頭行のindexの日にちを取得します。
print(data.index[0].day)
サンプルコード
例えば、下記のcsv.txtがあったとします。
$ cat csv.txt 20160601010101,3 20160601010103,4 20160602010153,8
下記がサンプルコードになります。
$ cat sample.py
#!/usr/bin/env python3
# coding: UTF-8
import pandas as pd
data = pd.read_csv('csv.txt',
names=('date', 'val1'),
index_col='date',
parse_dates=True)
print(data.index)
print(data.index[0])
print(data.index[0].day)
下記が実行結果になります。
$ ./sample.py
DatetimeIndex(['2016-06-01 01:01:01', '2016-06-01 01:01:03',
'2016-06-02 01:01:53'],
dtype='datetime64[ns]', name='date', freq=None)
2016-06-01 01:01:01
1
