我非常喜欢query
方法。选择所有项目的null
查询是什么?我尝试了df.query("True")
,但它不起作用。
我发现的唯一工作是df.query("index == 0 | index != 0")
。
为什么“True”不起作用,它是一个谓词。
答案 0 :(得分:1)
对我而言:
df.query("index")
样品:
df = pd.DataFrame({'A':[1,2,3],
'B':[4,5,6]},
index=[-1,4,5])
print (df)
A B
-1 1 4
4 2 5
5 3 6
a = df.query("index")
print (a)
A B
-1 1 4
4 2 5
5 3 6
如果索引值不是负值,请使用:
a = df.query("index > -1")
print (a)
A B
0 1 4
1 2 5
2 3 6
通过评论编辑:
我不是query
专家,但如果仅使用True
,则会搜索索引中的值:
df = pd.DataFrame({'A':[1,2,3],
'B':[4,5,6]},
index=[True,0,'d'])
print (df)
A B
True 1 4
0 2 5
d 3 6
a = df.query("True")
print (a)
A 1
B 4
Name: True, dtype: int64
b = df.query('0')
print (b)
A 2
B 5
Name: 0, dtype: int64
另一个疯狂指数:
df = pd.DataFrame({'A':[1,2,3],
'B':[4,5,6]},
index=[True,True,True])
print (df)
A B
True 1 4
True 2 5
True 3 6
a = df.query("True")
print (a)
A B
True 1 4
True 2 5
True 3 6