在列中获取行的索引

时间:2016-01-12 08:27:17

标签: python pandas

我有以下数据框:

     date         value
0    2016-01-01   gfhgh
1    2016-01-02   acgb
2    2016-01-03   yjhgs

我需要获取日期是预定义值的行的索引。例如2016-01-02,我需要得到1.每个日期都是唯一的。

3 个答案:

答案 0 :(得分:2)

您可以使用的IIUC:

print df
        date  value
0 2016-01-01  gfhgh
1 2016-01-02   acgb
2 2016-01-03  yjhgs

print df[df['date'] == pd.to_datetime('2016-01-02')].index.tolist()
[1]

答案 1 :(得分:2)

您应该使用索引来获取它的内容:访问数据。

只需将当前索引推送到数据框中,然后将索引设置为日期,并使用.loc获取所需的数字。

         date  value
0  2016-01-01  gfhgh
1  2016-01-02   acgb
2  2016-01-03  yjhgs

In [4]: df.reset_index(inplace=True)

In [5]: df.set_index('date', inplace=True)

In [6]: df.loc['2016-01-02','index']
Out[6]: 1

如果你想要整行,只需忽略, 'index'部分

In [7]: df.loc['2016-01-02']
Out[7]: 
index       1
value    acgb
Name: 2016-01-02, dtype: object

答案 2 :(得分:2)

假设日期字段是字符串:

df[df.date == '<the date value whose index you want>'].index.tolist()

将返回日期等于您提供的日期值的索引列表