2017-01-11 7 views
2

Pandasデータフレームから任意の開始インデックスと終了インデックスを使用してデータを取得したいと考えています。たとえば、醜い方法は、このようなものですPandasのインデックスの開始と終了を設定するエレガントな方法

def get_data(self, start=None, end=None): 
    if start is None and end is not None: 
     return self.data[:end] 
    if start is not None and end is None: 
     return self.data[start:] 
    if start is not None and end is not None: 
     return self.data[start:end] 

これを行うにはエレガントな方法はありますか?ありがとう!

答えて

2
def get_data(self, start=None, end=None): 
    idx = self.data.index 
    start = idx[0] if start is None else start 
    end = idx[-1] if end is None else end 
    return self.data.loc[start:end] 
+0

ご返信ありがとうございます。位置情報の索引作成にも有効です。時間範囲の時系列データの索引付けはどうですか? –

+0

@PengZhao右エンドポイントを挿入しますか? – piRSquared

+0

はい、私は左右両方のエンドポイントが必要です。 –

関連する問題