在pandas中,对于下图中的这种典型的DataFrame,一般有四种索引方法。
DataFrame
1. 直接索引:先列后行
假如我们要索引数据的第2行第1列的22.8,使用直接索引法如下:
data["open"]["2018-02-26"]
2. 使用 loc 按名字索引:先行后列
同样索引上述数据,如果使用名字索引,先行后列:
data.loc["2018-02-26"]["open"]
或者,这样也可以:
data.loc["2018-02-26", "open"]
3. 使用 iloc 按数字索引:先行号后列号
data.iloc[1, 0]
4. 使用ix组合索引
假如要索引第1天到第4天,['open', 'close', 'high', 'low']这四个指标的结果:
data.ix[:4, ['open', 'close', 'high', 'low']]
但这是一种过时的写法,以后可能会被取消掉,推荐使用loc
或者iloc
:
data.loc[data.index[0:4], ['open', 'close', 'high', 'low']]
data.iloc[0:4, data.columns.get_indexer(['open', 'close', 'high', 'low'])]
或者直接这样好像更方便:
data.loc[:4, ['open', 'close', 'high', 'low']]
网友评论