获取基于connditions的索引

时间:2018-02-14 14:21:44

标签: python pandas

从以下代码:

aps1.Status.head(10)
Out[663]: 
0    OK
1    OK
2    OK
3    OK
4    OK
5    OK
6    Fail
7    OK
8    Fail
9    OK

如何获取Status失败的索引?我试过了:

 print (index for index,value in enumerate(aps1.Status) if value == "Fail"])

但我收到语法错误。感谢

4 个答案:

答案 0 :(得分:2)

boolean indexingindex

一起使用
L = aps1.index[aps1.Status == 'Fail']

答案 1 :(得分:2)

删除']'最后

print (index for index,value in enumerate(aps1.Status) if value == "Fail"**]**)

答案 2 :(得分:1)

由于额外的原因,你收到了这个错误。尝试删除它

答案 3 :(得分:0)

在数据框上使用带有 iterrows 的列表推导式,并为 Status 列设置 if 条件

status=['OK'
,'OK'
,'OK'
,'OK'
,'OK'
,'OK'
,'Fail'
,'OK'
,'Fail'
,'OK']
df=pd.DataFrame({'Status':status})
df.reset_index(inplace=True)

print([index for index,item in df.iterrows() if item['Status']=='Fail'])

输出 [6, 8]